Skip to content

Instantly share code, notes, and snippets.

View claudia-romano's full-sized avatar

Claudia Romano claudia-romano

View GitHub Profile
.text-to-crop {
@include lhCrop(1.2, 0.75); //using Roboto font family
}
@mixin lhCrop($line-height, $capital-letter: 1) {
&::before {
content: '';
display: block;
height: 0;
width: 0;
margin-top: calc((#{$capital-letter} - #{$line-height}) * 0.5em);
}
}
.text-to-crop {
@include lhCrop(1.2); //line-height: 1.2
}
@mixin lhCrop($line-height) {
&::before {
content: '';
display: block;
height: 0;
width: 0;
margin-top: calc((1 - #{$line-height}) * 0.5em);
}
}
<p class="icon-text-aligner">
<svg class="icon"><use href="#icon-dog" xlink:href="#icon-dog"/></svg>
<em>This is some text here</em>
</p>
/* add this class to parent element that contains icon + text */
.icon-text-aligner {
display: flex;
align-items: center;
> *:nth-child(2) {
margin-left: var(--space-xxs);
}
.icon {
:root {
--icon-xs: 16px;
--icon-sm: 24px;
--icon-md: 32px;
--icon-lg: 48px;
--icon-xl: 64px;
}
/* icon size */
.icon--xs {
@supports(--css: variables) {
.theme--dark {
--component-background: var(--black);
--color-text: var(--gray-4);
--color-icon-primary: #fff;
//..other relevant css variables
}
}
.icon {
color: var(--color-icon-primary);
}
/* reset - used to enable icon color customizations */
.icon {
fill: currentColor;
stroke: none;
&.icon--outline {
stroke: currentColor;
}
use {