Avoid hiding elements with CSS styling

It is best to avoid using the CSS styles to hide DOM elements.

If you use display:none on a <div>, the contained markup always remains in the DOM with its data-bind attributes applied, even if the <div> is not displayed and any changes to the view model keep updating the children. This may result in performance degradation. Only use this approach if the visible condition changes frequently. This avoids reconstructing the DOM for every change. In all other situations, use the ko-if binding if the binding does not construct the DOM when the condition results to false. When the condition result is true, child nodes are reconstructed and binding of the view model occurs.