From this web page :
http://tldp.org/LDP/abs/html/abs-guide.html
It\'s mentioned the usage of the if bracket then convention which need a space after the semicol
The space after the semicolon is not required by the syntax for any shell I know of, but it's good style and makes the code easier to read.
I suppose the "sometimes needs to be escaped" wording refers to cases like echo foo\;bar
, where you don't want the semicolon to be interpreted as a separator by the shell.