Last active
August 29, 2015 14:08
-
-
Save feo52/d205149d872c90976886 to your computer and use it in GitHub Desktop.
Pure CSS Three Lines Icon with :checked
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<link rel="stylesheet" href="style.css" /> | |
<style type="text/css"> | |
.pureCssThreeLinesIcon{ font-size: 32px; display: inline-block; } | |
#pureCssThreeLinesSwitch{ display: none; } | |
</style> | |
</head> | |
<body> | |
<input id ="pureCssThreeLinesSwitch" type="checkbox" /> | |
<label for="pureCssThreeLinesSwitch" class="pureCssThreeLinesIcon">≡</label> | |
</body> | |
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* ------------------------------------------------------------------------- | |
ThreeLinesIcon & CrossLinesIcon | |
------------------------------------------------------------------------- */ | |
.pureCssThreeLinesIcon { | |
width: 1em; | |
height: 1em; | |
position: relative; | |
box-sizing: border-box; | |
border: 0.125em solid #2c2c2c; | |
border-radius: 20%; | |
text-align:center; | |
line-height:1em; | |
} | |
.pureCssThreeLinesIcon::before { | |
content: ""; | |
position: absolute; | |
top: 0.125em; | |
left: 0.125em; | |
width: 0.5em; | |
height: 0.5em; | |
box-sizing: border-box; | |
border-style: solid; | |
border-width: 0.125em 0em; | |
border-color: rgba(44,44,44,1); | |
background: rgba(44,44,44,0); | |
} | |
.pureCssThreeLinesIcon::after { | |
content: ""; | |
position: absolute; | |
top: 0.3125em; | |
left: 0.125em; | |
width: 0.5em; | |
height: 0.125em; | |
background: #2C2C2C; | |
} | |
#pureCssThreeLinesSwitch:checked + .pureCssThreeLinesIcon, | |
.pureCssCrossLinesIcon { | |
width: 1em; | |
height: 1em; | |
box-sizing: border-box; | |
position: relative; | |
border: 0.125em solid #2c2c2c; | |
border-radius: 50%; | |
text-align:center; | |
line-height:1em; | |
} | |
#pureCssThreeLinesSwitch:checked + .pureCssThreeLinesIcon::before, | |
.pureCssCrossLinesIcon::before { | |
content: ""; | |
position: absolute; | |
top: 0.3125em; | |
left: 0.125em; | |
width: 0.5em; | |
height: 0.125em; | |
box-sizing: border-box; | |
border-style: solid; | |
border-width: 0em; | |
border-color: rgba(44,44,44,0); | |
background: rgba(44,44,44,1); | |
-webkit-transform: rotate(45deg); | |
-ms-transform: rotate(45deg); | |
transform: rotate(45deg); | |
} | |
#pureCssThreeLinesSwitch:checked + .pureCssThreeLinesIcon::after, | |
.pureCssCrossLinesIcon::after { | |
content: ""; | |
position: absolute; | |
top: 0.3125em; | |
left: 0.125em; | |
width: 0.5em; | |
height: 0.125em; | |
background: #2C2C2C; | |
-webkit-transform: rotate(-45deg); | |
-ms-transform: rotate(-45deg); | |
transform: rotate(-45deg); | |
} | |
/* ------------------------------------------------------------- | |
ThreeLinesIcon transition | |
------------------------------------------------------------- */ | |
.pureCssThreeLinesIcon { | |
-webkit-transition: | |
border-radius 0.6s ease-out 0.1s; | |
transition: | |
border-radius 0.6s ease-out 0.1s; | |
} | |
.pureCssThreeLinesIcon::before { | |
-webkit-transition: | |
top 0.2s ease-out 0.3s, | |
height 0.2s ease-out 0.3s, | |
border-width 0.2s ease-out 0.3s, | |
border-color 0.2s ease-out 0.3s, | |
background 0.2s ease-out 0.3s, | |
-webkit-transform 0.2s ease-out 0.0s; | |
transition: | |
top 0.2s ease-out 0.3s, | |
height 0.2s ease-out 0.3s, | |
border-width 0.2s ease-out 0.3s, | |
border-color 0.2s ease-out 0.3s, | |
background 0.2s ease-out 0.3s, | |
transform 0.2s ease-out 0.0s; | |
} | |
.pureCssThreeLinesIcon::after { | |
-webkit-transition: | |
-webkit-transform 0.2s ease-out 0.0s; | |
transition: | |
transform 0.2s ease-out 0.0s; | |
} | |
#pureCssThreeLinesSwitch:checked + .pureCssThreeLinesIcon { | |
-webkit-transition: | |
border-radius 0.6s ease-out 0.1s; | |
transition: | |
border-radius 0.6s ease-out 0.1s; | |
} | |
#pureCssThreeLinesSwitch:checked + .pureCssThreeLinesIcon::before { | |
-webkit-transition: | |
top 0.2s ease-out 0.0s, | |
height 0.2s ease-out 0.0s, | |
border-width 0.2s ease-out 0.0s, | |
border-color 0.2s ease-out 0.0s, | |
background 0.2s ease-out 0.0s, | |
-webkit-transform 0.2s ease-out 0.3s; | |
transition: | |
top 0.2s ease-out 0.0s, | |
height 0.2s ease-out 0.0s, | |
border-width 0.2s ease-out 0.0s, | |
border-color 0.2s ease-out 0.0s, | |
background 0.2s ease-out 0.0s, | |
transform 0.2s ease-out 0.3s; | |
} | |
#pureCssThreeLinesSwitch:checked + .pureCssThreeLinesIcon::after { | |
-webkit-transition: | |
-webkit-transform 0.2s ease-out 0.3s; | |
transition: | |
transform 0.2s ease-out 0.3s; | |
} | |
/* ------------------------------------------------------------- | |
css hacks for IE | |
------------------------------------------------------------- */ | |
.pureCssThreeLinesIcon, /* IE8 or less */ | |
.pureCssCrossLinesIcon{ /* IE8 or less */ | |
text-indent:0; | |
white-space:normal; | |
overflow:visible; | |
} | |
:root .pureCssThreeLinesIcon, /* other browsers */ | |
:root .pureCssCrossLinesIcon{ /* other browsers */ | |
text-indent:100%; | |
white-space:nowrap; | |
overflow:hidden; | |
cursor: pointer; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment