There are various inconsistencies surrounding headings that make
this change worth trialing. The font-size of headings in IE6/7
isn't relative to the root font-size (see #61). Modern browsers
set the `h1` font-size based on the depth of nesting in certain
HTML5 sectioning elements. This change overcomes both the issues.
At the same time, the margins are being normalized so that they
are consistent and `em`-based. If people need to customise the
heading font-size and margin, they can either edit normalize.css
directly or override later in the source. But at least any non-
customised headings will behave consistently now.
Close#41
Remove the default padding. In theory, the correct normalization
would be to add the padding to IE6/7 rather than remove it from
all browsers. However, the most common use case is going to be
for legends within unstyled fieldsets, and the presence of 2px
of horizontal padding is likely to be unexpected.
Allow text wrapping in Firefox 3. Modify the default white-space
value to allow long legends to wrap. No simple fix to allow this
in IE6/7/8.
Prevent the addition of vertical margins on nested lists without
interferred with author expectations when customising margins
directly on 'ul' or 'ol' selectors later in the stylesheet.
Left margin needs to be normalized to remove it from IE6/7.
Close#57
Inclusion of these normalizations can result in unwanted or
unexpected consequences. This is because `a:visited` has a
specificity of 0,0,1,1. Therefore, the pseudo-class has to be
included in every author link-style with a lower specificity.
This is not expected behaviour when building up link styles from
the browser defaults. Very little is lost by removing the link
color normalization.
Applying *overflow:visible to button/input causes text inputs to
grow to fit their content, even if an explicit, fixed width is
applied. It was originally included to remove excess inner
spacing on buttons and submit/reset/button-type inputs in IE6/7.
Fixing this bug in IE6 requires dropping the fix entirely because
there is no way to avoid it being applied to text inputs. If
there is a need to fix this excess spacing bug in IE6, then it
should be done using a class that is applied to the
necessary elements.
For IE7, the excess spacing fix can be moved into the ruleset
that targets button and submit/reset/button-type inputs. This
prevents text inputs from growing.
IE renders rounded corners on fieldsets by default.
All browsers - even those that use the same border value of
2px groove threedface in their UA stylesheet - have different
final rendering colors, widths, and joining of the border.
The chosen value of 1px solid #c0c0c0 takes the most common
visual border width (IE, Firefox, Opera), removes the problematic
groove width value, and takes the computed color value from Chrome.