Skip to content

Instantly share code, notes, and snippets.

@xzyfer
Last active December 22, 2015 01:09
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 xzyfer/6394659 to your computer and use it in GitHub Desktop.
Save xzyfer/6394659 to your computer and use it in GitHub Desktop.
Optimal CSS preprocessor output
/* flag */
.flag,
.money-back-guarantee {
display: table;
width: 100%;
}
.flag__flag,
.money-back-guarantee .money-back-guarantee__messaging {
padding-left: 30px;
padding-top: 0px;
display: table-cell;
}
.flag__mast,
.money-back-guarantee .money-back-guarantee__badge {
display: table-cell;
width: 1%;
}
.flag__mast > img,
.money-back-guarantee .money-back-guarantee__badge > img {
display: inline-block;
max-width: none;
}
/* flag--middle */
.flag--middle > .flag__mast,
.flag--middle > .flag__flag,
.money-back-guarantee > .money-back-guarantee__badge,
.money-back-guarantee > .money-back-guarantee__messaging {
vertical-align: middle;
}
/* flag */
.flag {
display: table;
width: 100%;
}
.flag__flag {
padding-left: 30px;
padding-top: 0px;
display: table-cell;
}
.flag__mast {
display: table-cell;
width: 1%;
}
.flag__mast > img {
display: inline-block;
max-width: none;
}
/* flag--middle */
.flag--middle > .flag__mast,
.flag--middle > .flag__flag {
vertical-align: middle;
}
@mixin fafa($a, $b) {
@extend .flag;
#{$a} {
@extend .flag__mast;
}
#{$b} {
@extend .flag__flag;
}
}
@mixin mama($a, $b) {
@include fafa($a, $b);
@extend .flag--middle;
}
.money-back-guarantee {
@include mama(".money-back-guarantee__badge", ".money-back-guarantee__messaging");
}
/* flag */
.flag, .flag--top,
.flag--middle {
display: table;
width: 100%;
}
.flag__flag {
padding-left: 30px;
padding-top: 0px;
display: table-cell;
}
.flag__mast {
display: table-cell;
width: 1%;
}
.flag__mast > img {
display: inline-block;
max-width: none;
}
/* flag--middle */
.flag--middle > .flag__mast,
.flag--middle > .flag__flag {
vertical-align: middle;
}
fafa(a, b) {
@extend .flag;
{a} {
@extend .flag__mast;
> img {
@extend .flag__mast > img;
}
}
{b} {
@extend .flag__flag;
}
}
mama(a, b) {
fafa(a, b);
& > {a} {
@extend .flag--middle > .flag__mast;
}
& > {b} {
@extend .flag--middle > .flag__flag;
}
}
.money-back-guarantee {
mama(".money-back-guarantee__badge", ".money-back-guarantee__messaging");
}
/* modified for easier diff'ing */
/* flag */
.flag,
.money-back-guarantee {
display: table;
width: 100%;
}
.flag__flag,
.money-back-guarantee .money-back-guarantee__messaging {
padding-left: 30px;
padding-top: 0px;
display: table-cell;
}
.flag__mast,
.money-back-guarantee .money-back-guarantee__badge {
display: table-cell;
width: 1%;
}
.flag__mast > img,
.money-back-guarantee .money-back-guarantee__badge > img {
display: inline-block;
max-width: none;
}
/* flag--middle */
.flag--middle > .flag__mast,
.flag--middle > .flag__flag,
.money-back-guarantee > .money-back-guarantee__badge,
.money-back-guarantee > .money-back-guarantee__messaging {
vertical-align: middle;
}
/* flag */
.flag,
.money-back-guarantee {
display: table;
width: 100%;
}
.flag__flag,
.money-back-guarantee .money-back-guarantee__messaging {
padding-left: 30px;
padding-top: 0px;
display: table-cell;
}
.flag__mast,
.money-back-guarantee .money-back-guarantee__badge {
display: table-cell;
width: 1%;
}
.flag__mast > img,
.money-back-guarantee .money-back-guarantee__badge > img {
display: inline-block;
max-width: none;
}
/* flag--middle */
.flag--middle > .flag__mast,
.flag--middle > .flag__flag,
.money-back-guarantee > .money-back-guarantee__badge,
.money-back-guarantee > .money-back-guarantee__messaging {
vertical-align: middle;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment