28

Doesn't matter what I do, using Mac OSX 10.9.2 and Chrome Version 33.0.1750.152, padding, background-color, nothing works. I am really just wanting to apply a padding-top and padding-bottom of 5px on a select element, works everywhere cept Chrome on a MAC OSX. What gives? How to do this globally on all platforms??

Solomon Closson
  • 6,111
  • 14
  • 73
  • 115

5 Answers5

67

You need to apply -webkit-appearance:none; when adding CSS to select elements in webkit browsers.

DEMO http://jsfiddle.net/XxkSC/3830/

Kevin Lynch
  • 24,427
  • 3
  • 36
  • 37
9

There is better option to achieve a natural design:

height:30px;
background:#ffffff;

DEMO JSFiddle

p.s

Vector's answer is hiding the arrows on the right side.

Almog_0
  • 422
  • 4
  • 11
3

Add the following property to your select in your css file:

-webkit-appearance:none;
pconnor88
  • 345
  • 3
  • 13
2

If you are using bootstrap, you can add class custom-select:

<select class="form-control custom-select">

After adding it, you can eventually adjust height by adding line-height property to css:

select {
    line-height: 1.3;
}

https://getbootstrap.com/docs/4.1/components/input-group/#custom-select

0

This solution is not only for select but also for input and textarea.

select,
textarea,
input {
    -webkit-appearance: none !important;
       -moz-appearance: none !important;
            appearance: none !important;
}

I also applied the solution for all browsers, so it should work the same way everywhere.

!important did the trick for me, but it will depend if you will need it or not.

RuiVBoas
  • 364
  • 4
  • 10