Skip to content

Instantly share code, notes, and snippets.

@nguyenj
Created May 2, 2016 16:58
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 nguyenj/3af389038c65e4ce985d90f1a5c00af3 to your computer and use it in GitHub Desktop.
Save nguyenj/3af389038c65e4ce985d90f1a5c00af3 to your computer and use it in GitHub Desktop.
Styling selectors purely with CSS and minimal JS
select
appearance none
display block
width 100%
padding 0.5em 2em 0.5em 0.5em
border none
outline none
background-color transparent
&:focus,
&:hover,
&:active
outline none
.select
display inline-block
overflow hidden
position relative
border 1px solid #333
&::after
content ''
display block
width 0
transform translateY(-50%)
position absolute
top 50%
right 0.5em
border 0.5em solid transparent
border-width 0.5em 0.5em 0
border-top-color #333
pointer-events none
select(id="mealType" name="mealType")
option(value="breakfast") Breakfast
option(value="lunch") Lunch
option(value="dinner") Dinner
option(value="snack") Snack
(($) ->
$ ->
$('select').wrap '<div class="select" />'
) jQuery
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment