Edit: Actually, if we don't get rid of prefixes entirely, we should get rid specifically of vendor prefixes. Using -experimental- or -x- is fine with me. Just don't segment by vendors so only some browsers are explicitly supported.
Edit: Actually, if we don't get rid of prefixes entirely, we should get rid specifically of vendor prefixes. Using -experimental- or -x- is fine with me. Just don't segment by vendors so only some browsers are explicitly supported.
How do you propose we differentiate these and know what the designer meant? That's why we have prefixes, until it's standardized.
Prefixes help. My favorite example is CSS gradients with transparency.
Mozilla: background-image: -moz-linear-gradient( rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 95% );
IE 9: filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=#550000FF, endColorstr=#550000FF );
IE 8: -ms-filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=#550000FF, endColorstr=#550000FF );
Webkit: background-image: -webkit-gradient( linear, left top, left bottom, from(rgba(50,50,50,0.8)), to(rgba(80,80,80,0.2)), color-stop(.5,#333333) );
How would one properly differentiate between browsers implementing functionality differently in this case without prefixes? The only option would be to wait years for standards to be finalized and then implemented.
color: rgb(255, 255, 255);
color: rgba(255, 255, 255, 0.5);
Browser which do not support rgba simply ignore it and use the rgb() value.If my gradient looked bad in Mozilla, how on earth would the I know which property to change? They'd seem identical unless I memorized every single browser specific implementation of every CSS property.
It's not like we don't have this issue already with different versions of the same engine changing syntax.