https://github.com/sha-red/compass-mixins/tree/master/lib
extended with more sass frameworks and as django app.
				
			
			
		
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					136 lines
				
				4.1 KiB
			
		
		
			
		
	
	
					136 lines
				
				4.1 KiB
			|   
											12 years ago
										 | // Based on [Eric Meyer's reset](http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/)
 | ||
|  | // Global reset rules.
 | ||
|  | // For more specific resets, use the reset mixins provided below
 | ||
|  | //
 | ||
|  | // *Please Note*: tables still need `cellspacing="0"` in the markup.
 | ||
|  | @mixin global-reset {
 | ||
|  |   html, body, div, span, applet, object, iframe,
 | ||
|  |   h1, h2, h3, h4, h5, h6, p, blockquote, pre,
 | ||
|  |   a, abbr, acronym, address, big, cite, code,
 | ||
|  |   del, dfn, em, font, img, ins, kbd, q, s, samp,
 | ||
|  |   small, strike, strong, sub, sup, tt, var,
 | ||
|  |   dl, dt, dd, ol, ul, li,
 | ||
|  |   fieldset, form, label, legend,
 | ||
|  |   table, caption, tbody, tfoot, thead, tr, th, td {
 | ||
|  |     @include reset-box-model;
 | ||
|  |     @include reset-font; }
 | ||
|  |   body {
 | ||
|  |     @include reset-body; }
 | ||
|  |   ol, ul {
 | ||
|  |     @include reset-list-style; }
 | ||
|  |   table {
 | ||
|  |     @include reset-table; }
 | ||
|  |   caption, th, td {
 | ||
|  |     @include reset-table-cell; }
 | ||
|  |   q, blockquote {
 | ||
|  |     @include reset-quotation; }
 | ||
|  |   a img {
 | ||
|  |     @include reset-image-anchor-border; } }
 | ||
|  | 
 | ||
|  | // Reset all elements within some selector scope. To reset the selector itself,
 | ||
|  | // mixin the appropriate reset mixin for that element type as well. This could be
 | ||
|  | // useful if you want to style a part of your page in a dramatically different way.
 | ||
|  | //
 | ||
|  | // *Please Note*: tables still need `cellspacing="0"` in the markup.
 | ||
|  | @mixin nested-reset {
 | ||
|  |   div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
 | ||
|  |   pre, a, abbr, acronym, address, code, del, dfn, em, img,
 | ||
|  |   dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, tbody, tfoot, thead, tr {
 | ||
|  |     @include reset-box-model;
 | ||
|  |     @include reset-font; }
 | ||
|  |   table {
 | ||
|  |     @include reset-table; }
 | ||
|  |   caption, th, td {
 | ||
|  |     @include reset-table-cell; }
 | ||
|  |   q, blockquote {
 | ||
|  |     @include reset-quotation; }
 | ||
|  |   a img {
 | ||
|  |     @include reset-image-anchor-border; } }
 | ||
|  | 
 | ||
|  | // Reset the box model measurements.
 | ||
|  | @mixin reset-box-model {
 | ||
|  |   margin: 0;
 | ||
|  |   padding: 0;
 | ||
|  |   border: 0;
 | ||
|  |   outline: 0; }
 | ||
|  | 
 | ||
|  | // Reset the font and vertical alignment.
 | ||
|  | @mixin reset-font {
 | ||
|  |   font: {
 | ||
|  |     weight: inherit;
 | ||
|  |     style: inherit;
 | ||
|  |     size: 100%;
 | ||
|  |     family: inherit; };
 | ||
|  |   vertical-align: baseline; }
 | ||
|  | 
 | ||
|  | // Resets the outline when focus.
 | ||
|  | // For accessibility you need to apply some styling in its place.
 | ||
|  | @mixin reset-focus {
 | ||
|  |   outline: 0; }
 | ||
|  | 
 | ||
|  | // Reset a body element.
 | ||
|  | @mixin reset-body {
 | ||
|  |   line-height: 1;
 | ||
|  |   color: black;
 | ||
|  |   background: white; }
 | ||
|  | 
 | ||
|  | // Reset the list style of an element.
 | ||
|  | @mixin reset-list-style {
 | ||
|  |   list-style: none; }
 | ||
|  | 
 | ||
|  | // Reset a table
 | ||
|  | @mixin reset-table {
 | ||
|  |   border-collapse: separate;
 | ||
|  |   border-spacing: 0;
 | ||
|  |   vertical-align: middle; }
 | ||
|  | 
 | ||
|  | // Reset a table cell (`th`, `td`)
 | ||
|  | @mixin reset-table-cell {
 | ||
|  |   text-align: left;
 | ||
|  |   font-weight: normal;
 | ||
|  |   vertical-align: middle; }
 | ||
|  | 
 | ||
|  | // Reset a quotation (`q`, `blockquote`)
 | ||
|  | @mixin reset-quotation {
 | ||
|  |   quotes: "" "";
 | ||
|  |   &:before, &:after {
 | ||
|  |     content: ""; } }
 | ||
|  | 
 | ||
|  | // Resets the border.
 | ||
|  | @mixin reset-image-anchor-border {
 | ||
|  |   border: none; }
 | ||
|  | 
 | ||
|  | // Unrecognized elements are displayed inline.
 | ||
|  | // This reset provides a basic reset for html5 elements
 | ||
|  | // so they are rendered correctly in browsers that don't recognize them
 | ||
|  | // and reset in browsers that have default styles for them.
 | ||
|  | @mixin reset-html5 {
 | ||
|  |   #{elements-of-type(html5-block)} {
 | ||
|  |     @include reset-box-model;
 | ||
|  |     display: block; } }
 | ||
|  | 
 | ||
|  | // Resets the display of inline and block elements to their default display
 | ||
|  | // according to their tag type. Elements that have a default display that varies across
 | ||
|  | // versions of html or browser are not handled here, but this covers the 90% use case.
 | ||
|  | // Usage Example:
 | ||
|  | //
 | ||
|  | //     // Turn off the display for both of these classes
 | ||
|  | //     .unregistered-only, .registered-only
 | ||
|  | //       display: none
 | ||
|  | //     // Now turn only one of them back on depending on some other context.
 | ||
|  | //     body.registered
 | ||
|  | //       +reset-display(".registered-only")
 | ||
|  | //     body.unregistered
 | ||
|  | //       +reset-display(".unregistered-only")
 | ||
|  | @mixin reset-display($selector: "", $important: false) {
 | ||
|  |   #{append-selector(elements-of-type("inline"), $selector)} {
 | ||
|  |     @if $important {
 | ||
|  |       display: inline !important; }
 | ||
|  |     @else {
 | ||
|  |       display: inline; } }
 | ||
|  |   #{append-selector(elements-of-type("block"), $selector)} {
 | ||
|  |     @if $important {
 | ||
|  |       display: block !important; }
 | ||
|  |     @else {
 | ||
|  |       display: block; } } }
 |