placeholder 样式

本文介绍了如何通过CSS选择器来设置不同浏览器下输入框(input)和文本区域(textarea)的占位符颜色,包括WebKit浏览器、Mozilla Firefox及Internet Explorer等。

因为每个浏览器的CSS选择器都有所差异,所以需要针对每个浏览器做单独的设定(可以在冒号前面写input和textarea)。  

  ::-webkit-input-placeholder { /* WebKit browsers */

  color:#999;

  }

  :-moz-placeholder { /* Mozilla Firefox 4 to 18 */

  color:#999;

  }

  ::-moz-placeholder { /* Mozilla Firefox 19+ */

  color:#999;

  }

  :-ms-input-placeholder { /* Internet Explorer 10+ */

  color:#999;

  }

还可以写成下面这样:

  input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {

  color: #666;

  }

  input:-moz-placeholder, textarea:-moz-placeholder {

  color:#666;

  }

  input::-moz-placeholder, textarea::-moz-placeholder {

  color:#666;

  }

  input:-ms-input-placeholder, textarea:-ms-input-placeholder {

  color:#666;

  }

知识点:单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。

  css伪类:CSS 伪类用于向某些选择器添加特殊的效果。

  css伪元素:CSS 伪元素用于向某些选择器设置特殊效果。

  伪元素由双冒号和伪元素名称组成。双冒号是在当前规范中引入的,用于区分伪类和伪元素。但是伪类兼容现存样式,浏览器需要同时支持旧的伪类, 如:first-line,:first-letter,:before,:after等等。因此对于css2之前已经有的伪元素两种写法的作用是一样的,但是为了兼容IE浏览器还是使用单冒号的写法。

转载于:https://www.cnblogs.com/Leesttee/p/8136853.html

修改placeholder样式可以通过不同的方式实现,以下是一些常见的方法及示例代码: ### 基本样式修改 可以使用 `::placeholder` 伪元素来修改placeholder的基本样式,示例代码如下: ```html <style> input::placeholder { color: green; } </style> <input type="text" placeholder="hello world" style="color: red;"> ``` 此代码将输入框中placeholder的文字颜色设置为绿色,而输入的文字颜色为红色 [^2]。 ### 考虑浏览器兼容性的样式修改 为了兼容不同浏览器,需要使用不同的前缀来修改placeholder样式。以下示例展示了在新版火狐、IE10等浏览器中修改 `.login-input` 输入框placeholder样式的代码: ```css /* 修改placeholder样式,兼容性 新版火狐,IE10 */ .login-input::-webkit-input-placeholder { color: #000; font-size: 0.3rem; transition: .5s; transform-origin: left top; } .login-input::-moz-placeholder { color: #000; font-size: 0.3rem; transition: .5s; transform-origin: left top; } .login-input:-ms-input-placeholder { color: #000; font-size: 0.3rem; transition: .5s; transform-origin: left top; } /* 兼容性 新版火狐,IE10 */ .login-input:focus::-webkit-input-placeholder { color: #aaa; transform: scale(0.7) translateY(-0.28rem); } .login-input:focus::-moz-placeholder { color: #aaa; transform: scale(0.7) translateY(-0.28rem); } .login-input:focus:-ms-input-placeholder { color: #aaa; transform: scale(0.7) translateY(-0.28rem); } ``` 上述代码不仅设置了placeholder的颜色、字体大小和过渡效果,还设置了输入框获得焦点时placeholder样式变化 [^1]。 ### 兼容性说明 `::placeholder` 伪元素的兼容性情况如下:目前只兼容 Chrome 56+、Firefox 51+、Safari 10.1+、Opera 43+、Edge 16+、IE 11+、iOS Safari 10.3+、Android Browser 4.4+、Android Chrome 56+ [^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值