// normalize.css v2.0.1 | MIT License | git.io/normalize // @category base @mixin base-normalize-html5() { /* ========================================================================== HTML5 display definitions ========================================================================== */ /* * Corrects `block` display not defined in IE 8/9. */ article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary { display: block; } /* * Corrects `inline-block` display not defined in IE 8/9. */ audio, canvas, video { @include inline-block(); } /* * Prevents modern browsers from displaying `audio` without controls. * Remove excess height in iOS 5 devices. */ audio:not([controls]) { display: none; height: 0; } /* * Addresses styling for `hidden` attribute not present in IE 8/9. */ [hidden] { display: none; } } @mixin base-normalize-text-adjust() { /* * 0. Corrects text resizing oddly in IE6/7 when body font-size is set using em units * http://clagnut.com/blog/348/#c790 * 1. Sets default font family to sans-serif. * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom * www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */ html { // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { font-size: 100%; /* 0 */ } font-family: sans-serif; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -ms-text-size-adjust: 100%; /* 2 */ } } @mixin base-normalize-page() { /* ============================================================================= Base ========================================================================== */ /* * Removes default margin. */ body { margin: 0; } } @mixin base-normalize-links() { /* ========================================================================== Links ========================================================================== */ /* * Addresses `outline` inconsistency between Chrome and other browsers. */ a:focus { outline: thin dotted; } /* * Improves readability when focused and also mouse hovered in all browsers. */ a:active, a:hover { outline: 0; } } @mixin base-normalize-typogrpahy-core() { /* * Corrects font family set oddly in Safari 5 and Chrome. */ code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; } /* * Improves readability of pre-formatted text in all browsers. */ pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; } /* * Addresses inconsistent and variable font size in all browsers. */ small { font-size: 80%; } /* * Prevents `sub` and `sup` affecting `line-height` in all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sup { top: -0.5em; } sub { bottom: -0.25em; } } @mixin base-normalize-typography() { /* ============================================================================= Typography ========================================================================== */ /* * Addresses font sizes and margins set differently in IE6/7 * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5 */ h1 { font-size: 2em; margin: 0.67em 0; } h2 { font-size: 1.5em; margin: 0.83em 0; } h3 { font-size: 1.17em; margin: 1em 0; } h4 { font-size: 1em; margin: 1.33em 0; } h5 { font-size: 0.83em; margin: 1.67em 0; } h6 { font-size: 0.75em; margin: 2.33em 0; } /* * Addresses styling not present in IE 8/9, Safari 5, and Chrome. */ abbr[title] { border-bottom: 1px dotted; } /* * Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome. */ b, strong { font-weight: bold; } /* * Addresses styling not present in Safari 5 and Chrome. */ dfn { font-style: italic; } /* * Addresses styling not present in IE 8/9. */ mark { background: #ff0; color: #000; } blockquote { margin: 1em 40px; } /* * Addresses margins set differently in IE6/7 */ p, pre { margin: 1em 0; } } @mixin base-normalize-quotes() { /* * Sets consistent quote types. */ q { quotes: "\201C" "\201D" "\2018" "\2019"; } } @mixin base-normalize-lists() { // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { /* ============================================================================= Lists ========================================================================== */ /* * Addresses margins set differently in IE6/7 */ dl, menu, ol, ul { margin: 1em 0; } dd { margin: 0 0 0 40px; } /* * Addresses paddings set differently in IE6/7 */ menu, ol, ul { padding: 0 0 0 40px; } /* * Corrects list images handled incorrectly in IE7 */ nav ul, nav ol { list-style: none; list-style-image: none; } } } @mixin base-normalize-image() { /* * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3 * 2. Improves image quality when scaled in IE7 * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */ img { border: 0; /* 1 */ // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { -ms-interpolation-mode: bicubic; /* 2 */ } } } @mixin base-normalize-embed() { /* ============================================================================= Embedded content ========================================================================== */ @include base-normalize-image(); /* * Corrects overflow displayed oddly in IE9 */ svg:not(:root) { overflow: hidden; } } @mixin base-normalize-figures() { /* ============================================================================= Figures ========================================================================== */ /* * Addresses margin not present in IE6/7/8/9, S5, O11 */ figure { margin: 0; } } @mixin base-normalize-fieldset() { /* * Define consistent border, margin, and padding. */ fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; } } @mixin base-normalize-forms() { /* ============================================================================= Forms ========================================================================== */ /* * Corrects margin displayed oddly in IE6/7 */ form { margin: 0; } /* * 1. Corrects color not being inherited in IE6/7/8/9 * 2. Corrects text not wrapping in FF3 * 3. Corrects alignment displayed oddly in IE6/7 */ legend { border: 0; /* 1 */ padding: 0; white-space: normal; /* 2 */ // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { *margin-left: -7px; /* 3 */ } } /* * 1. Corrects font family not being inherited in all browsers. * 2. Corrects font size not being inherited in all browsers. * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome * 4. Improves appearance and consistency in all browsers */ button, input, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 2 */ margin: 0; /* 3 */ vertical-align: baseline; /* 4 */ // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { *vertical-align: middle; /* 4 */ } } /* * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet */ button, input { line-height: normal; /* 1 */ } /* * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` * and `video` controls. * 2. Corrects inability to style clickable `input` types in iOS. * 3. Improves usability and consistency of cursor style between image-type * `input` and others. * 4. Removes inner spacing in IE7 without affecting normal text inputs */ button, html input[type="button"], /* 1 */ input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { *overflow: visible; /* 4 */ } } /* * Re-set default cursor for disabled elements. */ button[disabled], input[disabled] { cursor: default; } /* * 1. Addresses box sizing set to `content-box` in IE 8/9. * 2. Removes excess padding in IE 8/9. * 3. Removes excess padding in IE7 Known issue: excess padding remains in IE6 */ input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ // legacy @if $legacy-support-for-ie7 or $legacy-support-for-ie6 { *height: 13px; /* 3 */ *width: 13px; /* 3 */ } } /* * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome. * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome * (include `-moz` to future-proof). */ input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; } /* * Removes inner padding and search cancel button in Safari 5 and Chrome * on OS X. */ input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /* * Removes inner padding and border in Firefox 4+. */ button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /* * 1. Removes default vertical scrollbar in IE6/7/8/9 * 2. Improves readability and alignment in all browsers */ textarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ } } @mixin base-normalize-ime() { /* ============================================================================= IME mode ========================================================================== */ input[data-ime-mode-disabled], input[type=file] { ime-mode: disabled !important; } } @mixin base-normalize-table() { /* ========================================================================== Tables ========================================================================== */ /* * Remove most spacing between table cells. */ table { border-collapse: collapse; border-spacing: 0; } } // ------------------------- // base-normalize() provides the main entry point to incorporate the behaviors of normalize.css onto the page. // @mixin base-normalize // @param $exclude {List} the list of features to exclude from the reset // @link http://github.com/necolas/normalize.css @mixin base-normalize($exclude: ()) { /*! normalize.css v2.0.1 | MIT License | git.io/normalize */ $exclude: -compass-list($exclude); @if(not index($exclude, normalize-html5)) { @include base-normalize-html5(); } @if(not index($exclude, normalize-text-adjust)) { @include base-normalize-text-adjust(); } @if(not index($exclude, normalize-page)) { @include base-normalize-page(); } @if(not index($exclude, normalize-links)) { @include base-normalize-links(); } @if(not index($exclude, normalize-typography)) { @include base-normalize-typography(); } @if(not index($exclude, normalize-typography-core)) { @include base-normalize-typogrpahy-core(); } @if(not index($exclude, normalize-quotes)) { @include base-normalize-quotes(); } @if(not index($exclude, normalize-lists)) { @include base-normalize-lists(); } @if(not index($exclude, normalize-image)) { @include base-normalize-image(); } @if(not index($exclude, normalize-embeds)) { @include base-normalize-embed(); } @if(not index($exclude, normalize-figures)) { @include base-normalize-figures(); } @if(not index($exclude, normalize-forms)) { @include base-normalize-forms(); } @if(not index($exclude, normalize-fieldset)) { @include base-normalize-fieldset(); } @if(not index($exclude, normalize-tables)) { @include base-normalize-table(); } @if(not index($exclude, normalize-ime)) { @include base-normalize-ime(); } }