Skip to content

Instantly share code, notes, and snippets.

@keithhayden
Created October 19, 2013 02:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save keithhayden/7050948 to your computer and use it in GitHub Desktop.
Save keithhayden/7050948 to your computer and use it in GitHub Desktop.
Generated by SassMeister.com.
<div id="main-content">
<ul>
<li>phone-wide: green, 384px</li>
<li>tablet-portrait: yellow, 480px to 600px</li>
<li>tablet-landscape: red, 600px to 768px</li>
<li>computer: purple, 768px to ?</li>
</ul>
<p>
should turn green at 384px, doesn't change until 480px<br>
should turn yellow at 480px, doesn't change until 600px<br>
should turn red at 600px, doesn't change until 750px<br>
should turn purple at 768px, doesn't change until 960px
</p>
</div>
// ----
// Sass (v3.3.0.rc.1)
// Compass (v0.13.alpha.7)
// ----
@import "compass"
@import "normalize-scss"
@import "susy"
$base-font-size: 100%
$relative-font-sizing: true
$em-base: 16px
$show-grid-backgrounds: true
$total-columns : 5 // a 5-column, mobile-first grid
$column-width : 4em // each column is 4em wide (64px)
$gutter-width : 1em // 1em gutters between columns (16px)
$grid-padding : 0 // grid-padding equal to gutters
$container-style: fluid
//alternative layout breakpoints
$susy-phone-wide: 24em 8 // 384px
$susy-tablet-portrait: 30em 12 // 480px to 600px
$susy-tablet-landscape: 37.5em 16 // 600px to 768px
$susy-computer: 48em 24 // 768px to ?
#main-content
background-color: rgba(0, 150, 255, 0.6)
border: 3px solid rgba(57, 102, 207, 0.7)
border-top-width: 1px
border-left-width: 1px
min-height: 1000px
+span-columns($total-columns omega,$total-columns, 1em)
// BREAKPOINTS
// 384px
+at-breakpoint($susy-phone-wide)
#main-content
background: rgba(0, 255, 0, 0.6)
// 480px to 600px
+at-breakpoint($susy-tablet-portrait)
#main-content
background: rgba(255, 255, 0, 0.6)
// 600px to 768px
+at-breakpoint($susy-tablet-landscape)
#main-content
background: rgba(255, 0, 0, 0.9)
// 768px to ?
+at-breakpoint($susy-computer)
#main-content
background: rgba(255, 0, 255, 0.6)
/* normalize.css v2.1.2 | MIT License | git.io/normalize */
/* normalize.scss v2.1.2 | MIT/GPLv2 License | bit.ly/normalize-with-compass */
/* ==========================================================================
HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined in IE 8/9.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
display: block;
}
/**
* Correct `inline-block` display not defined in IE 8/9.
*/
audio,
canvas,
video {
display: inline-block;
*display: inline;
*zoom: 1;
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address styling not present in IE 8/9.
*/
[hidden] {
display: none;
}
/* ==========================================================================
Base
========================================================================== */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
* 3. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
* `em` units.
*/
html {
font-family: sans-serif;
/* 1 */
font-size: 100%;
/* 3 */
-ms-text-size-adjust: 100%;
/* 2 */
-webkit-text-size-adjust: 100%;
/* 2 */
}
/**
* Address `font-family` inconsistency between `textarea` and other form
* elements.
*/
button,
input,
select,
textarea {
font-family: sans-serif;
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* ==========================================================================
Links
========================================================================== */
/**
* Address `outline` inconsistency between Chrome and other browsers.
*/
a:focus {
outline: thin dotted;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* ==========================================================================
Typography
========================================================================== */
/**
* Set 1 unit of vertical rhythm on the top and bottom margin.
*/
p,
pre {
margin: 1.5em 0;
}
blockquote {
/* Set 1 unit of vertical rhythm on the top and bottom margin. */
margin: 1.5em 40px;
}
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari 5, and Chrome.
*/
h1 {
/* Set the font-size and line-height while keeping a proper vertical rhythm. */
font-size: 2em;
line-height: 1.5em;
/* Set 1 unit of vertical rhythm on the top and bottom margins. */
margin-top: 0.75em;
margin-bottom: 0.75em;
}
h2 {
font-size: 1.5em;
line-height: 2em;
margin-top: 1em;
margin-bottom: 1em;
}
h3 {
font-size: 1.17em;
line-height: 1.28205em;
margin-top: 1.28205em;
margin-bottom: 1.28205em;
}
h4 {
font-size: 1em;
line-height: 1.5em;
margin-top: 1.5em;
margin-bottom: 1.5em;
}
h5 {
font-size: 0.83em;
line-height: 1.80723em;
margin-top: 1.80723em;
margin-bottom: 1.80723em;
}
h6 {
font-size: 0.67em;
line-height: 2.23881em;
margin-top: 2.23881em;
margin-bottom: 2.23881em;
}
/**
* Address styling not present in IE 8/9, Safari 5, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari 5 and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Correct font family set oddly in Safari 5 and Chrome.
*/
code,
kbd,
pre,
samp {
font-family: monospace, serif;
_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;
}
/**
* Set consistent quote types.
*/
q {
quotes: "\201C" "\201D" "\2018" "\2019";
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `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;
}
/* ==========================================================================
Lists
========================================================================== */
/**
* Address margins set differently in IE 6/7.
*/
dl,
menu,
ol,
ul {
margin: 1.5em 0;
}
dd {
margin: 0 0 0 40px;
}
/**
* Address paddings set differently in IE 6/7.
*/
menu,
ol,
ul {
padding: 0 0 0 40px;
}
/**
* Correct list images handled incorrectly in IE 7.
*/
nav ul,
nav ol {
list-style: none;
list-style-image: none;
}
/* ==========================================================================
Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9.
*/
img {
border: 0;
/* Improve image quality when scaled in IE 7. */
-ms-interpolation-mode: bicubic;
}
/**
* Correct overflow displayed oddly in IE 9.
*/
svg:not(:root) {
overflow: hidden;
}
/* ==========================================================================
Figures
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari 5.
*/
figure {
margin: 0;
}
/* ==========================================================================
Forms
========================================================================== */
/**
* Correct margin displayed oddly in IE 6/7.
*/
form {
margin: 0;
}
/**
* Define consistent border, margin, and padding.
*/
fieldset {
margin: 0 2px;
/* Apply borders and padding that keep the vertical rhythm. */
border-color: #c0c0c0;
border-top-width: 0.0625em;
border-top-style: solid;
padding-top: 0.4625em;
border-bottom-width: 0.0625em;
border-bottom-style: solid;
padding-bottom: 0.9125em;
border-left-width: 0.0625em;
border-left-style: solid;
padding-left: 0.875em;
border-right-width: 0.0625em;
border-right-style: solid;
padding-right: 0.875em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
* 3. Correct alignment displayed oddly in IE 6/7.
*/
legend {
border: 0;
/* 1 */
padding: 0;
/* 2 */
*margin-left: -7px;
/* 3 */
}
/**
* 1. Correct font family not being inherited in all browsers.
* 2. Correct font size not being inherited in all browsers.
* 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
* 4. Improve appearance and consistency with IE 6/7.
*/
button,
input,
select,
textarea {
font-family: inherit;
/* 1 */
font-size: 100%;
/* 2 */
margin: 0;
/* 3 */
vertical-align: baseline;
/* 4 */
*vertical-align: middle;
/* 4 */
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
button,
input {
line-height: normal;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
* Correct `select` style inheritance in Firefox 4+ and Opera.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
* 4. Remove inner spacing in IE 7 without affecting normal text inputs.
* Known issue: inner spacing remains in IE 6.
*/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button;
/* 2 */
cursor: pointer;
/* 3 */
*overflow: visible;
/* 4 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* 1. Address box sizing set to `content-box` in IE 8/9.
* 2. Remove excess padding in IE 8/9.
* 3. Remove excess padding in IE 7.
* Known issue: excess padding remains in IE 6.
*/
input[type="checkbox"],
input[type="radio"] {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
/* 1 */
padding: 0;
/* 2 */
*height: 13px;
/* 3 */
*width: 13px;
/* 3 */
}
/**
* 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
* 2. Address `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;
box-sizing: content-box;
/* 2 */
}
/**
* Remove 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;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* 1. Remove default vertical scrollbar in IE 8/9.
* 2. Improve readability and alignment in all browsers.
*/
textarea {
overflow: auto;
/* 1 */
vertical-align: top;
/* 2 */
}
/* ==========================================================================
Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
#main-content {
background-color: rgba(0, 150, 255, 0.6);
border: 3px solid rgba(57, 102, 207, 0.7);
border-top-width: 1px;
border-left-width: 1px;
min-height: 1000px;
padding-left: 4.16667%;
padding-right: 4.16667%;
width: 91.66667%;
float: right;
margin-right: 0;
*margin-left: -1em;
display: inline;
}
@media (min-width: 24em) {
#main-content {
background: rgba(0, 255, 0, 0.6);
}
}
@media (min-width: 30em) {
#main-content {
background: rgba(255, 255, 0, 0.6);
}
}
@media (min-width: 37.5em) {
#main-content {
background: rgba(255, 0, 0, 0.9);
}
}
@media (min-width: 48em) {
#main-content {
background: rgba(255, 0, 255, 0.6);
}
}
<div id="main-content">
<ul>
<li>phone-wide: green, 384px</li>
<li>tablet-portrait: yellow, 480px to 600px</li>
<li>tablet-landscape: red, 600px to 768px</li>
<li>computer: purple, 768px to ?</li>
</ul>
<p>
should turn green at 384px, doesn't change until 480px<br>
should turn yellow at 480px, doesn't change until 600px<br>
should turn red at 600px, doesn't change until 750px<br>
should turn purple at 768px, doesn't change until 960px
</p>
</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment