HTML and CSS Reference
In some ways, we're through the dark ages when it comes to cross-browser issues. The
generation of browsers that includes Netscape Navigator 4 and Internet Explorer 4 proba-
bly marked the low point for web developers in terms of deciding how pages should be
written. In the heat of the browser wars, Netscape and Microsoft were adding new fea-
tures to their browsers hand over fist, with no regard for published standards. These fea-
tures tended to be at odds with each other, and for web designers to create complex
pages that worked in both popular browsers, they had to use some really awful tech-
niques to make things look okay. Worse, the differences made things like Cascading
work properly, the work involved was immense.
Currently, browser makers are working together to a greater extent than ever before. The
current versions of Internet Explorer, Firefox, Safari, Chrome, and Opera all offer strong
standards support, and even the browsers for popular mobile phone platforms like
Android and iPhone have standards-based browsers. Given the strong standards support
in current browsers, the biggest question most developers face is how they want to deal
with Internet Explorer 6. Version 6 of Internet Explorer was released in 2001, and it still
has a number of users, although that number continues to fall. The main problem with
that browser is that it deals with CSS differently than later versions of Internet Explorer
as well as other browsers, and those differences can make life painful for web designers.
Many websites are dropping support for Internet Explorer 6 entirely because it differs so
greatly from standards-based browsers.
Despite the fact that the browser picture is relatively clear these days, there are still cases
where browsers differ in terms of capabilities. The most obvious example is mobile
browsers. They have smaller screens than regular computers, and even the most advanced
mobile browsers have fewer capabilities than desktop browsers. There are also millions
of people with mobile devices that can access the Web but that have very limited support
markup is somewhat limited.
Progressive enhancement is a popular approach to creating web pages. It describes an
approach that enables web designers to use the latest and greatest technology available
without leaving people using browsers with limited capabilities behind. The idea is that