From 050428478b202989882dafba8f29b4f1115ae4d7 Mon Sep 17 00:00:00 2001 From: Raphael Goetter Date: Sun, 20 Apr 2014 19:35:39 +0200 Subject: [PATCH] Supp .mod:after (already BFC) --- css/01-base.css | 241 +++------------------------------------------ less/01-base.less | 3 +- less/knackLESS.zip | Bin 9378 -> 9499 bytes 3 files changed, 15 insertions(+), 229 deletions(-) diff --git a/css/01-base.css b/css/01-base.css index b293cca..54a3fd0 100644 --- a/css/01-base.css +++ b/css/01-base.css @@ -2,71 +2,50 @@ * www.KNACSS.com V2.9.3 (2014-02) @author: Raphael Goetter, Alsacreations * Licence WTFPL http://www.wtfpl.net/ */ - /* ----------------------------- */ - /* == soft reset */ - /* ----------------------------- */ - /* switching box model for all elements */ - * { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; box-sizing: border-box; } - /* soft reset */ - html, body { margin: 0; padding: 0; } - ul, ol { padding-left: 2em; } - ul.unstyled { list-style: none; } - img { vertical-align: middle; border: 0; } - audio, canvas, video { display: inline-block; } - svg:not(:root) { overflow: hidden; } - figure { margin: 0; } - /* ----------------------------- */ - /* == typography */ - /* ----------------------------- */ - /* base font-size corresponds to 10px and is adapted to rem unit */ - html { font-size: 62.5%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } - body { background-color: #ffffff; color: #000000; @@ -74,11 +53,8 @@ body { font-size: 1.4em; line-height: 1.5; } - /* font-sizing for content */ - /* preserve vertical-rythm, thanks to http://soqr.fr/vertical-rhythm/ */ - p, ul, ol, @@ -97,7 +73,6 @@ hgroup { margin-bottom: 0; line-height: 1.5; } - h1, .h1-like { margin-top: 0.65625em; @@ -105,7 +80,6 @@ h1, font-size: 3.2rem; line-height: 1.3125; } - h2, .h2-like { margin-top: 0.75em; @@ -113,7 +87,6 @@ h2, font-size: 2.8rem; line-height: 1.5; } - h3, .h3-like { margin-top: 0.875em; @@ -121,7 +94,6 @@ h3, font-size: 2.4rem; line-height: 1.75; } - h4, .h4-like { margin-top: 1.05em; @@ -129,15 +101,13 @@ h4, font-size: 2rem; line-height: 1.05; } - h5, .h5-like { - margin-top: 1.1666666666666667em; + margin-top: 1.16666667em; margin-bottom: 0; font-size: 1.8rem; - line-height: 1.1666666666666667; + line-height: 1.16666667; } - h6, .h6-like { margin-top: 1.3125em; @@ -145,29 +115,22 @@ h6, font-size: 1.6rem; line-height: 1.3125; } - /* alternate font-sizing */ - .smaller { - font-size: 0.7142857142857143em; + font-size: 0.71428571em; } - .small { - font-size: 0.8571428571428571em; + font-size: 0.85714286em; } - .big { - font-size: 1.1428571428571428em; + font-size: 1.14285714em; } - .bigger { - font-size: 1.2857142857142858em; + font-size: 1.28571429em; } - .biggest { - font-size: 1.4285714285714286em; + font-size: 1.42857143em; } - code, pre, samp, @@ -178,86 +141,64 @@ kbd { font-family: Consolas, 'DejaVu Sans Mono', Courier, monospace; line-height: 1; } - code, kbd, mark { border-radius: 2px; } - em { font-style: italic; } - strong { font-weight: bold; } - kbd { padding: 0 2px; border: 1px solid #999; } - code { padding: 2px 4px; background: rgba(0, 0, 0, 0.04); color: #b11; } - mark { padding: 2px 4px; background: #ff0; } - sup, sub { vertical-align: 0; position: relative; } - sup { bottom: 1ex; } - sub { top: .5ex; } - /* ----------------------------- */ - /* == hiding content */ - /* ----------------------------- */ - /* hiding content */ - .visually-hidden { position: absolute; left: -7000px; overflow: hidden; } - [dir=rtl] .visually-hidden { left: auto; right: -7000px; } - .desktop-hidden { display: none; } - /* hidden on desktop */ - /* ----------------------------- */ - /* == skip links styling */ - /* ----------------------------- */ - .skip-links { position: absolute; } - .skip-links a { position: absolute; left: -7000px; @@ -266,19 +207,13 @@ sub { color: white; text-decoration: none; } - .skip-links a:focus { position: static; } - /* ----------------------------- */ - /* == browsers consistency */ - /* ----------------------------- */ - /* avoid top margins on first content element */ - p:first-child, ul:first-child, ol:first-child, @@ -293,18 +228,14 @@ h5:first-child, h6:first-child { margin-top: 0; } - /* avoid margins on nested elements */ - li p, li ul, li ol { margin-top: 0; margin-bottom: 0; } - /* max values */ - img, table, td, @@ -316,518 +247,389 @@ input, video { max-width: 100%; } - /* margin-bottom on tables */ - table { margin-bottom: 1.5em; } - /* Google Gmap3 bug fix on images */ - :not(.gm-style) img { height: auto !important; } - .ie678 .gm-style img { height: 100%; /* IE678 hack */ } - .gm-style img, .gmnoscreen img, .gmnoprint img { max-width: none !important; } - /* scripts */ - body > script { display: none !important; } - /* ----------------------------- */ - /* ==layout and modules */ - /* ----------------------------- */ - /* float layout */ - /* module, gains superpower "BFC" Block Formating Context */ - .mod { overflow: hidden; } - /* blocks that needs to be placed under floats */ - .clear, .line, .row { clear: both; } - /* blocks that must contain floats */ - .clearfix:after, -.line:after, -.mod:after { +.line:after { content: ""; display: table; clear: both; } - /* table layout */ - .row { display: table; table-layout: fixed; width: 100%; } - .row > *, .col { display: table-cell; vertical-align: top; } - /* inline-block */ - .inbl { display: inline-block; vertical-align: top; } - /* alignments (blocks and inline) */ - /* ------------------------------ */ - /* left elements */ - .left { float: left; } - img.left { margin-right: 1em; } - /* right elements */ - .right { float: right; } - img.right { margin-left: 1em; } - img.left, img.right { margin-bottom: 5px; } - .center { margin-left: auto; margin-right: auto; } - .txtleft { text-align: left; } - .txtright { text-align: right; } - .txtcenter { text-align: center; } - /* ----------------------------- */ - /* == width helpers */ - /* .. use only when needed */ - /* ----------------------------- */ - /* blocks widths (percentage and pixels) */ - .w10 { width: 10%; } - .w20 { width: 20%; } - .w25 { width: 25%; } - .w30 { width: 30%; } - .w33 { width: 33.3333%; } - .w40 { width: 40%; } - .w50 { width: 50%; } - .w60 { width: 60%; } - .w66 { width: 66.6666%; } - .w70 { width: 70%; } - .w75 { width: 75%; } - .w80 { width: 80%; } - .w90 { width: 90%; } - .w100 { width: 100%; } - .w50p { width: 50px; } - .w100p { width: 100px; } - .w150p { width: 150px; } - .w200p { width: 200px; } - .w300p { width: 300px; } - .w400p { width: 400px; } - .w500p { width: 500px; } - .w600p { width: 600px; } - .w700p { width: 700px; } - .w800p { width: 800px; } - .w960p { width: 960px; } - .mw960p { max-width: 960px; } - .w1140p { width: 1140px; } - .mw1140p { max-width: 1140px; } - .wauto { width: auto; } - /* ----------------------------- */ - /* == spacing helpers */ - /* .. use only when needed */ - /* ----------------------------- */ - /* spacing helpers p,m = padding,margin a,t,r,b,l = all,top,right,bottom,left s,m,l,n = small(10px),medium(20px),large(30px),none(0) source https://github.com/stubbornella/oocss/blob/master/core/spacing/space.css */ - .m-reset, .ma0 { margin: 0; } - .p-reset, .pa0 { padding: 0; } - .ma1, .mas { margin: 10px; } - .ma2, .mam { margin: 20px; } - .ma3, .mal { margin: 30px; } - .pa1, .pas { padding: 10px; } - .pa2, .pam { padding: 20px; } - .pa3, .pal { padding: 30px; } - .mt0, .mtn { margin-top: 0; } - .mt1, .mts { margin-top: 10px; } - .mt2, .mtm { margin-top: 20px; } - .mt3, .mtl { margin-top: 30px; } - .mr0, .mrn { margin-right: 0; } - .mr1, .mrs { margin-right: 10px; } - .mr2, .mrm { margin-right: 20px; } - .mr3, .mrl { margin-right: 30px; } - .mb0, .mbn { margin-bottom: 0; } - .mb1, .mbs { margin-bottom: 10px; } - .mb2, .mbm { margin-bottom: 20px; } - .mb3, .mbl { margin-bottom: 30px; } - .ml0, .mln { margin-left: 0; } - .ml1, .mls { margin-left: 10px; } - .ml2, .mlm { margin-left: 20px; } - .ml3, .mll { margin-left: 30px; } - .pt0, .ptn { padding-top: 0; } - .pt1, .pts { padding-top: 10px; } - .pt2, .ptm { padding-top: 20px; } - .pt3, .ptl { padding-top: 30px; } - .pr0, .prn { padding-right: 0; } - .pr1, .prs { padding-right: 10px; } - .pr2, .prm { padding-right: 20px; } - .pr3, .prl { padding-right: 30px; } - .pb0, .pbn { padding-bottom: 0; } - .pb1, .pbs { padding-bottom: 10px; } - .pb2, .pbm { padding-bottom: 20px; } - .pb3, .pbl { padding-bottom: 30px; } - .pl0, .pln { padding-left: 0; } - .pl1, .pls { padding-left: 10px; } - .pl2, .plm { padding-left: 20px; } - .pl3, .pll { padding-left: 30px; } - /* ----------------------------- */ - /* == iefix */ - /* ----------------------------- */ - /* Make sure you are using Conditional Classes in your HTML */ - /* see : http://www.alsacreations.com/astuce/lire/988-classes-conditionnelles-HTML.html */ - .ie678 h1, .ie678 .h1-like { - font-size: 2.2857142857142856em; + font-size: 2.28571429em; } - .ie678 h2, .ie678 .h2-like { font-size: 2em; } - .ie678 h3, .ie678 .h3-like { - font-size: 1.7142857142857142em; + font-size: 1.71428571em; } - .ie678 h4, .ie678 .h4-like { - font-size: 1.4285714285714286em; + font-size: 1.42857143em; } - .ie678 h5, .ie678 .h5-like { - font-size: 1.2857142857142858em; + font-size: 1.28571429em; } - .ie678 h6, .ie678 .h6-like { - font-size: 1.1428571428571428em; + font-size: 1.14285714em; } - /* hasLayout for IE6/IE7 */ - .ie67 .clearfix, .ie67 .line, .ie67 .mod, @@ -835,52 +637,39 @@ source https://github.com/stubbornella/oocss/blob/master/core/spacing/space.css .ie67 .col { zoom: 1; } - /* inline-block and table-cell for IE6/IE7 */ - /* warning: .col needs width on IE6/IE7 */ - .ie67 .btn, .ie67 .col, .ie67 .inbl { display: inline; zoom: 1; } - .ie8 img { width: auto; /* @bugfix for IE8 */ } - /* Active box-sizing for IE6/IE7 */ - /* @source https://github.com/Schepp/box-sizing-polyfill */ - /* .ie67 * { behavior: url(/lib/box-sizing-polyfill/boxsizing.htc); } */ - /* ----------------------------- */ - /* == quick print reset */ - /* ----------------------------- */ - @media print { p, blockquote { orphans: 2; widows: 2; } - blockquote, ul, ol { page-break-inside: avoid; } - h1, h2, h3, @@ -888,10 +677,8 @@ source https://github.com/stubbornella/oocss/blob/master/core/spacing/space.css page-break-after: avoid; } } - /* debug helper */ - .knacss-debug { background: pink; outline: 3px solid maroon; -} \ No newline at end of file +} diff --git a/less/01-base.less b/less/01-base.less index 8a1faf3..63fa612 100644 --- a/less/01-base.less +++ b/less/01-base.less @@ -265,8 +265,7 @@ body > script {display: none !important;} /* blocks that must contain floats */ .clearfix:after, -.line:after, -.mod:after { +.line:after { content: ""; display: table; clear: both; diff --git a/less/knackLESS.zip b/less/knackLESS.zip index 620c58bc824f9071e2b84bbd7af6d594580252f7..4a854a78406c5a512a2eaebf230ee153fb395a3e 100644 GIT binary patch delta 5533 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 delta 5420 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 EUy