Completing previous answer, if you want to align DOM nodes created programatically (e.g. by using document.createElement and parentElement.appendChild in javaScript), no white space will be added between aligned elements. This can cause non-working of aligment.
On my Google Chrome 56.0.2924.87 and Firefox 51.0.1 (64-bit) browsers, aligment doesn't work if there aren't any white spaces to separate div
elements:
https://jsfiddle.net/jc5qwyaw/
There is an example when I create DOM nodes by javaScript:
https://jsfiddle.net/oa8yeudr/
If you uncomment command wrapDiv.appendChild(document.createTextNode(" "));
, you can see the difference.
Possible solution can be appending a white space text node after div nodes as example shows above.
Only tested on Chrome 56.0.2924.87 and Firefox 51.0.1 (64-bit).