Skip to content

Instantly share code, notes, and snippets.

@cyancey76
Last active September 22, 2017 21:01
Show Gist options
  • Save cyancey76/2327d79a589da26ef96595eecd462e94 to your computer and use it in GitHub Desktop.
Save cyancey76/2327d79a589da26ef96595eecd462e94 to your computer and use it in GitHub Desktop.
Center anything vertically using translateY().
/* Vertically center whatever we want,
* even if we don’t know its height.
*/
.element {
position: relative;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: perspective(1px) translateY(-50%);
}
/* Set preserve-3d on parent element
* if you can't use transform: perspective
* and the centered element is blurry.
*/
.parent-element {
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
transform-style: preserve-3d;
}
/* Mixin */
@mixin center-vertical( $position: relative ) {
position: $position;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}
.element p {
@include center-vertical();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment