- Apress: Beginning HTML with CSS and XHTML
- Apress: Beginning CSS Web Development
- Apress: Pro CSS Techniques
- Wrox: Beginning Web Programming with HTML, XHTML, and CSS, 2nd Edition
- Wrox: Beginning CSS: Cascading Style Sheets for Web Design, 2nd Edition
- Wrox: Professional CSS: Cascading Style Sheets for Web Design, 2nd Edition
- Peachpit: Styling Web Pages with CSS: Visual QuickProject Guide
- sitepoint: The CSS Anthology
- New Riders: Eric Meyer on CSS
- New Riders: More Eric Meyer on CSS
The CSS standard allows for alternative style sheets. Reasons why you might want to do this include:
- Allow for users’ tastes
- Some stylesheets may better suit users with visual difficulties
- Some stylesheets may emphasise different areas of information
Unfortunately, Internet Explorer does not implement alternative stylesheets. You can implement something similar using JavaScript. At its simplest level, you can just switch between stylesheets using some simple code. With more complex JavaScript, you can partially implement the standard techniques.
- Stu Nicholls | CSSplay | Experiments with cascading style sheets | Doing it with Style
- [ws] The Underscore Hack | Podtržítkový hack
- Eric Meyer: CSS
- css.maxdesign.com.au - CSS resources and tutorials for web designers and web developers
- Floatutorial: Step by step CSS float tutorial
- Little Boxes
- Useful CSS Snippets - webSemantics
- Ten more CSS tricks you may not know
- CSS horizontal navigation list
- Better Email Links from CSS-Tricks
- Better Email Links: Featuring CSS Attribute Selectors - CSS-Tricks
- [ws] The "min-height" Hack | Hack pro "min-height"
- css/edge
- W3C I18N FAQ: Styling using the lang attribute
- Whatever:hover
Earlier versions of Microsoft Internet Explorer implemented a non-standard box model. Essentially, IE’s model applies the width attribute to the total box (excluding margins). The W3C model applies the width only to the content of the box; the total width is that of the content plus the left & right margins plus the left & right borders.
Microsoft adopted the W3C model, but only as an alternative to their own. The W3C model is rendered when the Browser implements Standards mode; the old IE model renders in Quirks mode.
To enable Standards mode, you need to begin your HTML page with a valid DOCTYPE. The following discuss this in more detail.
CSS styles should always implement standards to guarantee their future compatability. Generally:
- You should only use Standard CSS: never propriety CSS
- Only rely on older common features. You can use new features, but only when the usability of the document does not absolutely depend on them.
- Don’t waste your time on workarounds to get special effects. You will only have fix them when newer browsers implement newer standards.
CSS Menus allow you to turn an ordinary list into a navigation system. Classically done with JavaScript, you can now use CSS to implement the technique. However, with older versions of Internet Explorer (<7), you will need to implement the Whatever:hover technique.
Even with the :hover pseudo class properly working, there is still a lot of adjusting you will need to cater for the positioning quirks of the browsers. A working sample of my own can be viewed here.
Internet Explorer requires special attention with CSS. With bugs and non-standard implementation, you will need to code around them, or include additional code for alternative implementation.
- The Underscore Hack | Podtrzitkovy hack
- Box Model Hack - css-discuss
- Whatever:hover
- Web Standards Project: IE's Top 10 CSS Problems
- IEBlog : Call to action: The demise of CSS hacks and broken pages
- IEBlog : Standards and CSS in IE