Commit Graph

201 Commits

Author SHA1 Message Date
Nicolas Gallagher
ef2b006aad Fix a few CSS comments 2015-03-30 14:14:46 -07:00
Nicolas Gallagher
0c31dada51 Fix project URL in normalize.css file 2015-03-17 11:52:17 -07:00
Nicolas Gallagher
d83132802e 3.0.2 2014-10-04 12:39:33 -07:00
Nicolas Gallagher
a473cee8a2 Fix code style 2014-10-04 12:29:57 -07:00
Maxime Thirouin
3a62048dae Only alter 'background-color' of links in IE 10
Close #337
2014-10-04 12:28:04 -07:00
Nicolas Gallagher
5962c89829 Add menu element to HTML5 display definitions
Fix #370
2014-10-04 11:38:31 -07:00
Nicolas Gallagher
071af828a2 3.0.1 2014-03-26 21:49:40 -07:00
Nicolas Gallagher
bb3a1304a0 More accurate comments
Fix #299
Fix #292
Fix #304
2014-02-17 12:18:41 -08:00
Nicolas Gallagher
6ec1a10b5d v3.0.0 2014-01-28 10:05:18 -08:00
Nicolas Gallagher
7f1e59a9df v3.0.0-rc.1 2014-01-25 21:14:26 -08:00
Nicolas Gallagher
3fe0df0fe5 Reorganise normalize.css and edit comments
Update comments in line with any changes browsers have introduced.

Minor reordering of rulesets.
2014-01-25 20:37:46 -08:00
Nicolas Gallagher
a2ae3b5d7a Revert 6992935807
Doesn't work in Firefox.
2014-01-25 16:50:27 -08:00
Nicolas Gallagher
7e80851c5f Fix i18n for q element
Don't attempt to normalize `q` because it prevents the browser from
automatically adapting the quotes used based on the value of a `lang`
attribute.
2014-01-24 23:09:36 -08:00
Nicolas Gallagher
a8edd0c5aa Fix pre text formatting and overflow
Don't visually break `pre` text over multiple lines.

Trigger a scrollbar when the preformatted text is too wide for its
container.
2014-01-24 22:04:39 -08:00
Nicolas Gallagher
37ea6ae187 Fix vertical alignment of progress
Chrome, Firefox, and Opera set `vertical-align: -0.2em`. The browser
implementations aren't great. They scale badly with font size and when
the height of the element is changed. Aligning them to the baseline, as
IE does, helps make their alignment consistent with other similar
elements.
2014-01-24 21:59:28 -08:00
Nicolas Gallagher
45cc401523 Change indentation: 4 -> 2 spaces 2014-01-24 13:23:52 -08:00
Oleg Korsunsky
68322db312 Address button overflow in IE 8/9/10 2014-01-24 13:16:11 -08:00
Nicolas Gallagher
20e58223c9 Revert textarea alignment modification
Leave the default baseline alignment in place.

Fix gh-280
2014-01-24 13:03:24 -08:00
Nicolas Gallagher
d86aa8500e Fix number input button cursor on OS X Chrome
Fix the cursor style for Chrome's increment/decrement buttons on
`input[type="number"]. For certain `font-size` values of the `input`, it
causes the cursor style of the decrement button to change from `default`
to `text`.

Fix gh-283
2014-01-24 13:02:12 -08:00
Nicolas Gallagher
4b94eb7d4d Remove a:focus outline normalization
My hypothesis is that it's more important for a user to get the focus
style they expect *within* their browser than it is to have consistent focus
styles *between* browsers. In particular, replacing Chrome's default focus
style (esp. just for links) seems presumptuous.

Component designers/developers can make the decision on when to modify
these browser defaults.

Fix gh-216
2014-01-15 21:32:00 -08:00
Nicolas Gallagher
ccbb28b123 Fix figure margin normalization
All browsers that support `figure` apply margin of `1em 40px`.

Fix gh-262
2014-01-15 16:52:18 -08:00
Nicolas Gallagher
5b9bf5e1a3 Fix optgroup normalization and add test
Ref gh-102
2014-01-15 16:45:43 -08:00
Nicolas Gallagher
3d3096db74 Normalize optgroup
Address Firefox not inheriting `font` properties for `optgroup`.

Fix gh-102
2014-01-15 16:30:33 -08:00
Nicolas Gallagher
37d1c1ef8b Remove default table cell padding
Normalize.css makes some convenience changes to the default table
rendering. This change removes the 1px of padding around table cells.
2014-01-15 16:16:32 -08:00
Nicolas Gallagher
496702aab6 Set correct display for progress in IE 8/9
Set to `inline-block` to match default value in modern browsers.

Fix #253
Close #254
2014-01-15 14:40:36 -08:00
Nicolas Gallagher
0b5badd591 Fix font and color inheritance for forms
Inherit all `font` properties.

Inherit `color` for form controls. Chrome and Safari on OS X will not
inherit `color` as they heavily restrict the author-defined styles that
will be respected for that element.

Fix gh-157
2014-01-15 14:21:28 -08:00
thoppe
6992935807 Fix fieldset width in Chrome and Firefox
Fixes an issue in Firefox [1] and Chrome [2]. The implicit width of
`fieldset` can be determined by the width of descendants rather than the
parent container. This change (adding `min-width:0`) makes the
`fieldset` behave like a `div` in this regard.

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=504622
[2] http://stackoverflow.com/questions/8084343/google-chrome-fieldset-overflow-bug

Close #272
2014-01-15 13:20:25 -08:00
Nicolas Gallagher
dafaf9ee60 v2.1.3 2013-08-26 11:37:18 -07:00
Kalifriki
5d4ef1c56f Add IE 10 to checkbox/radio normalization comments 2013-08-25 13:53:30 -07:00
Nicolas Gallagher
77982e20d8 Normalize the template element display
The `template` element shipped in Firefox 22 and Chrome 26. Browsers
without HTML template support should at least hide the element.
2013-07-01 23:54:45 -07:00
Nicolas Gallagher
37b483c1e1 Fix IE 10 active link background color
Remove the gray background color from active links in IE 10.

Fix gh-172
2013-07-01 23:42:37 -07:00
Nicolas Gallagher
56af2b1170 v2.1.2 2013-05-11 13:59:52 -07:00
Nicolas Gallagher
71d6cdc9a8 Revert root color and background normalization
Commit: 907890983e

The change caused problems with `body` background color no longer
bubbling up the the `html` element.

It also prevented you from setting `color` or `background` styles on
`html` before the normalize.css styles.

It might not be possibly to safely address – within normalize.css –
the problem that it was trying to avoid.

Fix gh-188
2013-05-07 23:40:22 -07:00
Nicolas Gallagher
691c71b985 v2.1.1 2013-04-07 17:27:53 -07:00
Nicolas Gallagher
907890983e Protect root against system color schemes
System color schemes (in particular, custom themes in Windows and Linux
distros) affect Firefox, IE, and Opera. Normalizing the web site/app's
root background and text color prevents these unwanted settings from
being used. Chrome doesn't apply system-level schemes to websites.

Fix gh-170
2013-04-01 06:53:47 -07:00
Nicolas Gallagher
341199ff56 v2.1.0 2013-01-20 17:35:12 -08:00
TJ VanToll
7bc787fe86 Normalize form element text-transform
By default, browsers set `text-transform:none` on most form controls in
order to prevent `text-transform` being inherited from ancestor nodes.

However, the `button` and `select` elements are exceptions.

* Firefox and Opera do not apply `text-transform:none` to `select`.

* Chrome, Safari, and IE 8+ do not apply `text-transform:none` to
  `button.

It's not suitable to set `text-transform:inherit` because all other form
elements intentionally avoid it. Safari will not honour that style for
`select`, and Chrome will only do so when the `select` element is
clicked.

Further details:
http://tjvantoll.com/2012/07/10/default-browser-handling-of-the-css-text-transform-property/
2013-01-20 17:09:32 -08:00
Nicolas Gallagher
fc85cfb9f1 Normalize h1 margin
Chrome, Safari, and Firefox all adjust the margin of `h1` at several
levels of nesting within HTML5 sectioning elements. This change ensures
that the margin, like the font-size, does not vary in these contexts.

Fix gh-160
2013-01-20 10:03:47 -08:00
Nicolas Gallagher
fdb11ae5b5 Normalize hr
Firefox uses different `box-sizing` and `height` values to all other
browsers. Firefox doesn't currently support `box-sizing` without the
`-moz-` prefix, so we use both the vendor-prefixed and unprefixed
properties to ensure that it matches the `content-box` value of other
browsers. It also requires the `height` to be set to `0`.

Fix gh-133
2013-01-20 09:46:54 -08:00
Nicolas Gallagher
28f1518666 Remove unnecessary pre styles
`word-wrap: break-word` was only needed for IE 6/7, and `white-space:
pre` is the default for all supported browsers.

Fix gh-159
2013-01-19 13:07:09 -08:00
Dawid Kruczek
2eb80024f6 Add main element to HTML5 display definitions
The HTML Working Draft has added `main` as a new element.
2013-01-14 20:48:50 -08:00
Nicolas Gallagher
5399ff9c0e Fix cursor style for disabled button input
The Android 4.0.* work around - `html input[type="button"]` - requires
the addition of `html` to the selector for disabled inputs, otherwise
disabled button inputs still have the `pointer` cursor.
2012-12-01 17:36:41 -08:00
Nicolas Gallagher
70c34af15b Language and comment style
* Make consistent use of tense in code comments.
* Update the comment style to match a more common convention.
* Remove an unintentional newline.
2012-11-26 09:27:11 -08:00
Nicolas Gallagher
994782f372 v2.0.1 2012-08-20 10:50:37 +01:00
François Robichet
dcc17fd21a Remove stray IE 6/7 hack 2012-08-20 10:46:38 +01:00
Nicolas Gallagher
494d32bd1d v2.0.0 2012-08-19 20:41:41 +01:00
Nicolas Gallagher
7e014980b9 Drop legacy browser support
No longer supports IE 6/7, Firefox < 4, and Safari < 5.

* Make use of `inherit` to simplify some of the rules.

* Remove a lot of padding and margin normalization, particularly for
  typographic elements, because modern browsers share common base
  styles.

* Add `quotes` normalization. While all target browsers support
  `quotes`, they don't share a common set of quote styles. Opera and IE
  use "curly" quotes whereas other browsers do not. Browsers don't
  appear to set different quotes depending on the language (via the
  `lang` attribute) of the content.

* Remove all list normalizations and they aren't needed anymore.

* Remove a handful of form normalizations that targetted IE 6/7 or
  Firefox 3.
2012-08-19 20:41:11 +01:00
Nicolas Gallagher
9d729698e6 v1.0.1 2012-08-19 20:38:00 +01:00
Nicolas Gallagher
0cdbf7c713 Adjust small font size normalization
Make the font size for `small` not quite so small. The default value of
`smaller` doesn't scale the base font size down by the same proportion
whatever the base size. IE 6/7/8 end up rendering small text larger than
most modern browsers. Opera can render it slightly smaller than Chrome
and Firefox when the base font size is relatively large.

The previous size of `75%` was a bit too small.
2012-08-19 19:45:58 +01:00
Nicolas Gallagher
207a39780c v1.0.0 2012-08-14 23:43:47 +01:00
Nicolas Gallagher
f52da7461f Update CSS comment wording 2012-08-14 23:35:20 +01:00
Nicolas Gallagher
31f72b55be Add MIT License 2012-08-07 22:27:32 +01:00
Nicolas Gallagher
b7579700ea Minor copy and comment adjustments 2012-07-08 23:43:00 +01:00
Nicolas Gallagher
93beaa2e94 Minor consistency adjustments
Normalize comments and ordering.
2012-07-07 10:49:39 +01:00
Nicolas Gallagher
79b3d21b69 Reintroduce fix for WebKit audio/video control bug
This fix was first introduced to deal with Chrome < 13 destroying the
appearance of native `audio` and `video` button controls when
`-webkit-appearance` is set on `input[type="button"]`. See #20

Android 4.0.* seems to use a version of WebKit that contains this bug.
See: https://github.com/h5bp/mobile-boilerplate/issues/121

...so the fix needs to be reintroduced.
2012-07-07 09:58:40 +01:00
Nicolas Gallagher
99b187d1a2 Revert addition of input placeholder rules
This commit reverts the following 5 commits:

49392e9df2
f9572a461a
79e2c16ba5
2691e7ab14
567af2e7d6

The `:moz-placeholder` rule doesn't have the desired effect because any
subsequent rule with higher specificity will result in the Firefox bug
resurfacing. There is no way to ensure that Firefox doesn't change the
color of the placeholder text. Example: https://tinker.io/e34a2

The `:focus::webkit-input-placeholder` normalization is being removed
because the current Chrome / Safari on Lion OSX behaviour is allowed in
the spec, Firefox is set to implement the same behaviour, and other
browsers may follow suit for usability reasons.

Some browser differences like these - low importance and in flux - can
be allowed to evolve and settle before assessing whether or not they
need or merit normalization.
2012-03-11 12:55:55 +00:00
Nicolas Gallagher
567af2e7d6 Fix indentation and update timestamp
Correct the indentation for the WebKit placeholder focus rule and move
the placeholder rules to the bottom of the forms normalization.

Update the timestamp.
2012-03-09 22:11:47 +00:00
Jonathan Neal
2691e7ab14 Addresses placeholder text remaining visible on focus in Chrome
The placeholder attribute in Chrome does not work to spec. This makes the text transparent on focus to work like Firefox, Safari, and the spec. Credit goes to @chadbaudoin for bringing this up in his pull request https://github.com/necolas/normalize.css/pull/86 and this Chrome bug is further documented at http://code.google.com/p/chromium/issues/detail?id=106714  and my own test is at https://tinker.io/be2f2/1
2012-03-09 13:30:17 -08:00
Nicolas Gallagher
79e2c16ba5 Correct code format and update timestamp 2012-03-09 19:41:02 +00:00
Jonathan Neal
f9572a461a Add placeholder color normalization
As @mathiasbynens points out, webkit has already set the placeholder, and it has set it as darkGray (#A9A9A9)
2012-03-09 11:31:51 -08:00
Jonathan Neal
49392e9df2 Add placeholder color normalization
The browser-defined style for placeholder text color is overwritten by style for input elements in Firefox. Adding :-moz-placeholder style overrides that, bringing Firefox inline with other browsers.

@mathiasbynens made a test case for this @ https://tinker.io/be2f2

This change improves consistency of placeholder style between Chrome, Safari, and Firefox browsers.
2012-03-09 09:03:54 -08:00
Nicolas Gallagher
664a7a760e Remove height from audio:not([controls]) in iOS5
A bug in iOS5 means that `audio` elements without controls are not
entirely hidden. They retain some height, as demonstrated in this test
case: http://jsbin.com/ios-audio-bug/3

The fix is to add `height: 0` to the rule.

Fix #69
2012-03-06 10:21:57 +00:00
Nicolas Gallagher
5e5496c026 Add summary to the block-level display rule for HTML5 elements
Legacy browsers, including IE6/7 and Firefox 3, do not make the
new HTML5 `summary` element block-level by default. This is
contrary to the HTML5 recommendations and the behaviour of modern
browsers.
2012-02-07 12:37:29 +00:00
Nicolas Gallagher
cb176831b9 Remove hr and separate some margin normalizations
Recommend that people supporting IE6/7 do not use the `hr` element
at all. It requires far more work than just normalizing margins.
IE6/7 do not collapse margins set on `hr` with margins of pre- or
proceeding elements.

Separate the margin normalizations for `p` and `pre` from that for
`h3`. Despite sharing the same margin value, headings are
qualitatively different from these other elements. Both in terms
of customisation and debugging using browser tools, it is cleaner
to keep the margins of heading separate.
2012-02-07 10:35:49 +00:00
jonathantneal
f1a096a498 Normalize typography
The margin of many elements in IE6/7 is set by 'pt', not relative to the root font-size. This is contrary to the HTML5 spec and all other modern browsers, including IE8+.

If people need to customize margins, they can either edit normalize.css directly or override later in the source. But at least any non-customized elements will behave consistently now.
2012-02-06 21:03:59 -08:00
Nicolas Gallagher
e65602a3b9 Manual merge with GitHub master branch 2012-02-07 01:55:13 +00:00
Nicolas Gallagher
6fc41118f7 Remove details from the rule applying padding-left to lists.
No browsers apply left padding to `details` by default.
2012-02-07 01:46:34 +00:00
jonathantneal
e469f757fd Update CSS comments
The margin of lists in IE6/7 is set by 'pt', not relative to the root font-size. This is contrary to the HTML5 spec and other modern browsers, including IE8+.

If people need to customize the list margin, they can either edit normalize.css directly or override later in the source. But at least any non-customised lists will behave consistently now.
2012-02-06 17:29:54 -08:00
jonathantneal
450aa56a20 Normalize lists 2012-02-06 17:15:46 -08:00
Nicolas Gallagher
0f1f244aec Update CSS comments 2012-01-31 16:07:05 +00:00
Nicolas Gallagher
1dea394cbf Normalize headings
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
2012-01-31 15:37:34 +00:00
Nicolas Gallagher
fe15b8f862 Re-set cursor to default for disabled input and button. 2012-01-31 13:28:24 +00:00
Nicolas Gallagher
f913304498 Combine the two WebKit search input pseudo-element rules 2012-01-22 23:31:15 +00:00
Nicolas Gallagher
a336a75dd2 Move font-family normalization from body to html. Close #62
Prevents the inability to override the font-family by setting it
on the `html` element later in the CSS.
2012-01-22 23:00:38 +00:00
Nicolas Gallagher
6ef5b9e78a Remove scrollbar normalization. Fix #64 #65
The `html` scrollbar normalization can cause issues in Firefox
when certain techniques are used by JS plugins (e.g. modals).
2012-01-22 22:44:53 +00:00
Nicolas Gallagher
efd8220019 Remove search cancel button from search inputs on Mac OS X.
After normalizing the search input on OS X, the search cancel
pseudo-element is not always well positioned and is missing from
other UAs.
2012-01-17 16:33:39 +00:00
Nicolas Gallagher
23c6fe17d2 Add small improvements to legend normalization.
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.
2012-01-17 15:42:10 +00:00
Nicolas Gallagher
31eb8b611e Remove excess padding from checkbox and radio inputs in IE7. Close #42 2012-01-17 14:17:35 +00:00
Nicolas Gallagher
3404fcb8b9 Normalize only the left margin of lists. Fix #49
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
2011-11-04 15:38:33 +00:00
Nicolas Gallagher
77e9ef4952 Minor comment cleanup.
Fix #50
Close #58
2011-11-04 15:37:10 +00:00
Nicolas Gallagher
e9e28741f4 Normalize h1 font-size. Close #41
h1 nested in 'section' and 'article' elements has a smaller
font-size in Firefox, Chrome, and Safari. This introduces browser
consistency.
2011-11-04 15:27:41 +00:00
Nicolas Gallagher
26f9a3f065 Remove default a and a:visited color normalizations.
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.
2011-10-25 00:34:03 +01:00
Nicolas Gallagher
6d085d7e52 Prevent text inputs growing as you type in IE6/7. Fix #46
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.
2011-09-22 18:42:20 +01:00
Nicolas Gallagher
4d81be6383 Remove temporary Chrome pre-13 fix for audio/video control styling bug.
Chrome 13 onwards no longer has a problem with -webkit-appearance
destroying the appearance of audio/video button controls. Ref #20
2011-09-14 11:27:24 +01:00
Nicolas Gallagher
3be9da44bc Normalize fieldset border. Fix #34
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.
2011-09-14 11:25:05 +01:00
Nicolas Gallagher
f3de91ac51 Update comment for img border normalization to include reference to Firefox 3 2011-08-31 23:03:02 +01:00
Nicolas Gallagher
fefbe796f1 Remove excess padding from radio and checkbox in IE8/9. Fix #27 2011-08-12 18:29:43 +01:00
Nicolas Gallagher
013d72407e Update monospace font stack fix to work in Safari 4 2011-08-11 10:27:57 +01:00
Nicolas Gallagher
743ee8bc7b Correct inaccurate description of [hidden] rule 2011-08-10 01:57:03 +01:00
Nicolas Gallagher
09be23f832 Leave default webkit-tap-highlight-color in place. Fix #23 2011-08-03 10:41:54 +01:00
Nicolas Gallagher
775989f4c7 Separate [hidden] and audio:not([controls]) to prevent entire rule being dropped in IE8 2011-08-03 10:39:34 +01:00
Nicolas Gallagher
0bb4cfa742 Simplify hiding of hidden and audio without controls. Work around IE6/7 list-style bug with nav, fix #25 2011-07-31 12:37:12 +01:00
Nicolas Gallagher
b3796b42b5 Add [hidden] attribute normalization 2011-07-20 20:35:55 +01:00
Nicolas Gallagher
8ae3231cdb Prevent IE6 from ignoring the embedded media ruleset. Fix #10 2011-07-20 20:06:47 +01:00
Nicolas Gallagher
9576d48fc2 Set {overflow:auto} in IE6/7 for <button> and <input> inside <table>. Fix #18 2011-07-12 12:52:07 +02:00
Nicolas Gallagher
1d174f1013 Fix #20 (only temporary until Chrome updates to version 13) 2011-07-12 12:44:40 +02:00
Nicolas Gallagher
7372f50250 Very minor copy typo fix and zoom property change. 2011-06-27 12:09:33 -07:00
Nicolas Gallagher
8cece82659 Add IE9 correction for SVG overflow, fix #16. Update demo to include explicit <img> and <svg> tests. 2011-06-21 18:33:36 +01:00
Nicolas Gallagher
7f8442aa01 Add timestamp and repo link. Close #7 2011-06-21 02:18:46 +01:00
Nicolas Gallagher
82e1797ed2 Reintroduce <audio>, <canvas>, <video> display setting 2011-06-20 18:23:16 +01:00