iOS 5.0 Safari not vertically centering placeholder in text box

前端 未结 5 1603
轻奢々
轻奢々 2021-02-01 03:23

I want to vertically center the text entered in input text boxes on the page.

Typical way to achieve this is to set the line-height and height equal. This works on pre

相关标签:
5条回答
  • 2021-02-01 03:59

    You should use percentage for the line-height.

    .txtBox {
           line-height: 100%;
           height: 3em;
        }
    <input type="text" class="txtBox" placeholder="Name"></input>
    
    0 讨论(0)
  • 2021-02-01 03:59

    Assuming you are just trying to make the input field appear larger then you could use padding:

    .txtBox {
        font-size: 1em;
        padding: 1em auto;
    }
    

    Also, your input field should be:

    <input type="text" class="txtBox" placeholder="Name" />
    

    Edit

    Sorry, took a little while. It appears that placeholder can be styled individually and / or inherit styles from the parent. Unfortunately there are quite a lot of styles that are not supported by Safari at this time.

    The following blog has details about the styling techniques and which are / are not supported within certain browsers:

    http://blog.ajcw.com/2011/02/styling-the-html5-placeholder/

    0 讨论(0)
  • 2021-02-01 04:09

    I got stuck on this issue for a long time despite using

    input::-webkit-input-placeholder { line-height:normal!important; }

    It turns out the having a line-height in the input element by itself was breaking my input::webkit-input-placeholder line-height.

    Solution extended:

    I removed the line-height in my input style and it fixed my issue.

    0 讨论(0)
  • 2021-02-01 04:12

    Setting line-height: 1; seems to fix this.

    0 讨论(0)
  • 2021-02-01 04:24

    For me there is only one solution that appears close to perfect in all browsers I tested (Chrome, FF, Safari (+iOS), IE10):

    line-height: normal;

    Solutions like line-height: 100% and line-height: 1; seem to be aligned towards the top of the input, especially in Chrome.

    http://jsfiddle.net/5Vc3z/

    Comparison:

    http://jsfiddle.net/5Vc3z/1/

    0 讨论(0)
提交回复
热议问题