// // HTML5 ✰ Boilerplate // // What follows is the result of much research on cross-browser styling. // Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, // Kroc Camen, and the H5BP dev community and team. // // Detailed information about this CSS: h5bp.com/css // // ==|== normalize ========================================================== // // ========================================================================== // HTML5 display definitions // ========================================================================== article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; } audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; } audio:not([controls]) { display: none; } [hidden] { display: none; } // ========================================================================== // Base // ========================================================================== // // 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units // 2. Force vertical scrollbar in non-IE // 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g // html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } body { margin: 0; font-size: $base-font-size; line-height: $base-line-height; } body, button, input, select, textarea { font-family: $base-font-family; color: $font-color; } // // Remove text-shadow in selection highlight: h5bp.com/i // These selection declarations have to be separate // Also: hot pink! (or customize the background color to match your design) // ::-moz-selection { background: $selected-background-color; color: $selected-font-color; text-shadow: none; } ::selection { background: $selected-background-color; color: $selected-font-color; text-shadow: none; } // ========================================================================== // Links // ========================================================================== a { color: $link-color; } a:visited { color: $link-visited-color; } a:hover { color: $link-hover-color; } a:focus { outline: thin dotted; } /* Improve readability when focused and hovered in all browsers: h5bp.com/h */ a:hover, a:active { outline: 0; } // ========================================================================== // Typography // ========================================================================== abbr[title] { border-bottom: 1px dotted; } b, strong { font-weight: bold; } i, em { font-style:italic;} blockquote { margin: 1em 40px; } dfn { font-style: italic; } hr { display: block; height: 1px; border: 0; border-top: 1px solid $hr-color; margin: 1em 0; padding: 0; } ins { background: #ff9; color: #000; text-decoration: none; } mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; } // Redeclare monospace font family: h5bp.com/j pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; } // Improve readability of pre-formatted text in all browsers pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; } q { quotes: none; } q:before, q:after { content: ""; content: none; } small { font-size: 85%; } // Position subscript and superscript content without affecting line-height: h5bp.com/k sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sup { top: -0.5em; } sub { bottom: -0.25em; } // ========================================================================== // Lists // ========================================================================== dl {margin:$list-margin;} ul, ol { margin: $list-margin; padding: $list-padding; } dd { margin: 0 0 0 40px; } nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; } // ========================================================================== // Embedded content // ========================================================================== // // 1. Improve image quality when scaled in IE7: h5bp.com/d // 2. Remove the gap between images and borders on image containers: h5bp.com/e // img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; } // // Correct overflow not hidden in IE9 // svg:not(:root) { overflow: hidden; } // ========================================================================== // Figures // ========================================================================== figure { margin: 0; } // ========================================================================== // Forms // ========================================================================== form { margin: 0; } fieldset { border: 0; margin: 0; padding: 0; } // Indicate that 'label' will shift focus to the associated form element label { cursor: pointer; } // // 1. Correct color not inheriting in IE6/7/8/9 // 2. Correct alignment displayed oddly in IE6/7 // legend { border: 0; *margin-left: -7px; padding: 0; } // // 1. Correct font-size not inheriting in all browsers // 2. Remove margins in FF3/4 S5 Chrome // 3. Define consistent vertical alignment display in all browsers // button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; } // // 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet) // 2. Correct inner spacing displayed oddly in IE6/7 // button, input { line-height: normal; *overflow: visible; } // // Reintroduce inner spacing in 'table' to avoid overlap and whitespace issues in IE6/7 // table button, table input { *overflow: auto; } // // 1. Display hand cursor for clickable form elements // 2. Allow styling of clickable form elements in iOS // button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; } // // Consistent box sizing and appearance // input[type="checkbox"], input[type="radio"] { box-sizing: border-box; } input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; } input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } // // Remove inner padding and border in FF3/4: h5bp.com/l // button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } // // 1. Remove default vertical scrollbar in IE6/7/8/9 // 2. Allow only vertical resizing // textarea { overflow: auto; vertical-align: top; resize: vertical; } // Colors for form validity input:valid, textarea:valid { } input:invalid, textarea:invalid { background-color: #f0dddd; } // ========================================================================== // Tables // ========================================================================== table { border-collapse: collapse; border-spacing: 0; } td { vertical-align: top; }