What is the practical benefit to keep CSS 100% validated (not using any hacks), for client's projects.? even if there is no cross browser problem.
And what type of problem i can face in future if i do not maintain CSS validity 100%.
What is the practical benefit to keep CSS 100% validated (not using any hacks), for client's projects.? even if there is no cross browser problem.
And what type of problem i can face in future if i do not maintain CSS validity 100%.
Practical....hmm, I suppose that you can say to the client "it's 100% validated"? In practice if you're doing anything complex (e,g, opacity) it's extremely difficult to maintain 100% valid CSS, conditional stylesheets it a way to eliminate most of these cases, but not everything.
Do what works in this case, not what the validator tells you. That being said, don't ignore validation errors that are legitimate errors not there for a specific reason.
The fact that a page looks correct with a current version of a browser doesn't guarantee that it will in a future version.
If you use non-valid CSS, you might be inadvertently relying on a bug in the rendering code, which, if it gets patched, could break your layout.
If you use valid CSS, however, any standards-compliant browser should display the page correctly, as long as it follows implements that version of the CSS standard.
In short. If the validator complains about vendor specific/css3 properties like -webkit-border-radius
ignore it. Anything else you should fix.
The practical benefit to keep CSS 100% validated is also the fact that you can detect easier and much faster a mistake in your code.
For example, during website development, I always use a browser which shows me clearly when XHTML or CSS are invalid (green/red icons). It saved me a few hours of my life: sometimes, if I work with very basic editor, if I misspell something in CSS code, I notice it immediately when I see in the browser that CSS is nevermore valid.
Note: it also helps a lot to have 100% XHTML. Sometimes an invalid XHTML is caused by an error in code-behind.