UNPKG

react-jam-ui

Version:

React JAM UI components

585 lines (479 loc) 9.81 kB
$default = json('default.json', { hash: true }); $gridDefault = json('../Grid/default.json', { hash: true }); $custom = json('../../../../ui.config.json', { hash: true, optional: true }); $layout = typeof($custom) != 'null' ? $custom.$layout : $default.$layout; $grid = typeof($custom) != 'null' ? $custom.$grid : $gridDefault.$grid; $breakpoints = typeof($custom) != 'null' ? $custom.$breakpoints : $default.$breakpoints; *, *:before, *:after { box-sizing: border-box; } // HTML5 display definitions // ========================================================================== // // Add the correct display in IE 9-. // 1. Add the correct display in Edge, IE, and Firefox. // 2. Add the correct display in IE. // article, aside, details, // 1 figcaption, figure, footer, header, main, // 2 menu, nav, section, summary { // 1 display: block; } // // Add the correct display in IE 9-. // audio, canvas, progress, video { display: inline-block; } // // Add the correct display in iOS 4-7. // audio:not([controls]) { display: none; height: 0; } // // Add the correct vertical alignment in Chrome, Firefox, and Opera. // progress { vertical-align: baseline; } // // Add the correct display in IE 10-. // 1. Add the correct display in IE. // template, // 1 [hidden] { display: none; } // Links // ========================================================================== // // 1. Remove the gray background on active links in IE 10. // 2. Remove gaps in links underline in iOS 8+ and Safari 8+. // a { background-color: transparent; // 1 -webkit-text-decoration-skip: objects; // 2 } // // Remove the outline on focused links when they are also active or hovered // in all browsers (opinionated). // a:active, a:hover { outline-width: 0; } // Text-level semantics // ========================================================================== // // 1. Remove the bottom border in Firefox 39-. // 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. // abbr[title] { border-bottom: none; // 1 text-decoration: underline; // 2 text-decoration: underline dotted; // 2 } // // Prevent the duplicate application of `bolder` by the next rule in Safari 6. // b, strong { font-weight: inherit; } // // Add the correct font weight in Chrome, Edge, and Safari. // b, strong { font-weight: bolder; } // // Add the correct font style in Android 4.3-. // dfn { font-style: italic; } // // Correct the font size and margin on `h1` elements within `section` and // `article` contexts in Chrome, Firefox, and Safari. // h1 { font-size: 2em; margin: 0.67em 0; } // // Add the correct background and color in IE 9-. // mark { background-color: #ff0; color: #000; } // // Add the correct font size in all browsers. // small { font-size: 80%; } // // Prevent `sub` and `sup` elements from affecting the line height in // all browsers. // sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } // Embedded content // ========================================================================== // // Remove the border on images inside links in IE 10-. // img { border-style: none; } // // Hide the overflow in IE. // svg:not(:root) { overflow: hidden; } // Grouping content // ========================================================================== // // 1. Correct the inheritance and scaling of font size in all browsers. // 2. Correct the odd `em` font sizing in all browsers. // code, kbd, pre, samp { font-family: monospace, monospace; // 1 font-size: 1em; // 2 } // // Add the correct margin in IE 8. // figure { margin: 1em 40px; } // // 1. Add the correct box sizing in Firefox. // 2. Show the overflow in Edge and IE. // hr { box-sizing: content-box; // 1 height: 0; // 1 overflow: visible; // 2 } // Forms // ========================================================================== // // 1. Change font properties to `inherit` in all browsers (opinionated). // 2. Remove the margin in Firefox and Safari. // button, input, optgroup, select, textarea { font: inherit; // 1 margin: 0; // 2 } // // Restore the font weight unset by the previous rule. // optgroup { font-weight: 600; } // // Show the overflow in IE. // 1. Show the overflow in Edge. // button, input { // 1 overflow: visible; } // // Remove the inheritance of text transform in Edge, Firefox, and IE. // 1. Remove the inheritance of text transform in Firefox. // button, select { // 1 text-transform: none; } // // 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` // controls in Android 4. // 2. Correct the inability to style clickable types in iOS and Safari. // button, html [type="button"], // 1 [type="reset"], [type="submit"] { -webkit-appearance: button; // 2 } // // Remove the inner border and padding in Firefox. // button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } // // Restore the focus styles unset by the previous rule. // button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } // // Change the border, margin, and padding in all browsers (opinionated). // fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; } // // 1. Correct the text wrapping in Edge and IE. // 2. Correct the color inheritance from `fieldset` elements in IE. // 3. Remove the padding so developers are not caught out when they zero out // `fieldset` elements in all browsers. // legend { box-sizing: border-box; // 1 color: inherit; // 2 display: table; // 1 max-width: 100%; // 1 padding: 0; // 3 white-space: normal; // 1 } // // Remove the default vertical scrollbar in IE. // textarea { overflow: auto; } // // 1. Add the correct box sizing in IE 10-. // 2. Remove the padding in IE 10-. // [type="checkbox"], [type="radio"] { box-sizing: border-box; // 1 padding: 0; // 2 } // // Correct the cursor style of increment and decrement buttons in Chrome. // [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } // // 1. Correct the odd appearance in Chrome and Safari. // 2. Correct the outline style in Safari. // [type="search"] { -webkit-appearance: textfield; // 1 outline-offset: -2px; // 2 } // // Remove the inner padding and cancel buttons in Chrome and Safari on OS X. // [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } // // Correct the text style of placeholders in Chrome, Edge, and Safari. // ::-webkit-input-placeholder { color: inherit; opacity: 0.54; } // // 1. Correct the inability to style clickable types in iOS and Safari. // 2. Change font properties to `inherit` in Safari. // ::-webkit-file-upload-button { -webkit-appearance: button; // 1 font: inherit; // 2 } html { margin: 0; padding: 0; position: relative; min-height: 100%; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -webkit-font-smoothing: antialiased; } body { margin: 0 0 120px; padding: 0; font-family: unquote($layout[font-family]); font-size: $layout[font-size]; color: $layout.color; background: $layout.bg; } @media (max-width: 700px) { body { margin-bottom: 0; } } [tabindex="-1"]:focus { outline: none !important; } .link, a { color: $layout.link.default; text-decoration: underline; transition: color 0.15s; &:hover { color: $layout.link.hover; text-decoration: none; } &.link-icon { text-decoration: none; .link { text-decoration: underline; } &:focus, &:hover, &:active { text-decoration: none; .link { text-decoration: none; } } } } .link { cursor: pointer; } ul, ol, li { margin: 0; padding: 0; } li { list-style: none; } p { padding: 0; margin: 0; } h1,h2,h3,h4,h5,h6 { margin: 0; padding: 0; font-weight: normal; color: $layout.color; } .clearfix { &:after { content: ''; display: block; clear: both; } } .text-center, .align-center { text-align: center!important; } .text-left, .align-left { text-align: left!important; } .text-right, .align-right { text-align: right!important; } .container { padding-right: $grid.default.gap; padding-left: $grid.default.gap; margin-right: auto; margin-left: auto; position: relative; &:after { content: ''; display: block; clear: both; } } for name, params in $breakpoints { @media screen and (min-width: params.breakpoint) { .container { width: params.width; } } .show-{name} { display: none; } @media screen and (max-width: params.breakpoint - 1px) { .hide-{name} { display: none!important; } .show-{name} { display: block!important; } } } .embed-responsive { position: relative; display: block; height: 0; padding: 0; overflow: hidden; .embed-responsive-item, embed, iframe, object, video { position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border: 0; } &_16by9 { padding-bottom: 56.25%; } &_4by3 { padding-bottom: 75%; } } .icon * { pointer-events: none; }