html – 文本输入占位符不显示在IE和Firefox中

前端之家收集整理的这篇文章主要介绍了html – 文本输入占位符不显示在IE和Firefox中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
尽管使用了-moz-placeholder属性,但我的文本输入占位符拒绝在IE和Firefox中显示.如果您使用的是Firefox或IE,可以查看 on the contact page here.

有人可以帮助我一直在试图弄清楚这几个星期.我的代码示例如下:

input::-moz-placeholder,textarea::-moz-placeholder {
    color: #aaa;
    font-size: 18px;
}

    input:-ms-input-placeholder,textarea::-ms-input-placeholder {
        color: #aaa;
        font-size: 18px;
    }

input::-webkit-input-placeholder,textarea::-webkit-input-placeholder {
    color: #aaa;
    font-size: 18px;
}

解决方法

正如luke2012所述,当Box-sizing:border-Box;正在用于文本类型输入字段.但是,这仅在使用固定高度(例如Bootstrap框架)时出现,并且存在太多的顶部和底部填充.这不仅可以防止占位符文本显示,还可以在Firefox中输入文本.

我发现更好的解决方案是保持盒子大小:border-Box;并替代删除顶部和底部填充,并将高度增加到您希望输入字段拥有的总高度(包括任何边框).

input[type="email"],input[type="password"],input[type="text"] 
{
    -webkit-Box-sizing: border-Box;
    -moz-Box-sizing: border-Box;
    Box-sizing: border-Box;
    height: 42px; // Increase height as required
    margin-bottom: 30px;
    padding: 0 20px; // Now only left & right padding
}

这使事情更加一致,并且在诸如Bootstrap的框架上运行良好.

或者,您可以增加固定高度或设置高度:auto;并根据需要调整顶部和底部填充.

猜你在找的HTML相关文章