一般我们经常使用placeholder伪类选择器修改默认样式复制,突然发现placeholder-shown伪类选择器。更官方的解释是。任何显示占位符文本的表单元素的CSS伪类。简单的说,当显示输入框的占位符内容时,输入框做了什么。兼容性如下,移动端没问题placeholder-show是如何工作的:placeholder-shownCSS伪类在或//cssinput:placeholder-shown,textarea:placeholder-shown{border:1pxsolidpink;}如果placeholder为空可以使用:placeholder-shown来设置输入元素的样式。input:placeholder-shown{border:1pxsolidpink;background:yellow;color:green;}注意一些奇怪的问题??-我们设置颜色:绿色,但它不起作用。这是因为:placeholder-shown只会针对输入本身。对于实际的占位符文本,必须使用伪元素::占位符。input::placeholder{color:green;}我注意到如果应用::placeholder-shown,还有一些其他属性也会影响占位符的样式。input:placeholder-shown,textarea:placeholder-shown{font-style:italic;text-transform:uppercase;letter-spacing:5px;}不知道这是什么,可能是placeholder继承了这些属性,如果知道原因的请留言告诉我,谢谢。:placeholder-shownvs:empty:placeholder-shown是专门用来判断元素是否显示占位符的对象,我们主要用它来检查输入内容是否为空(假设所有输入都有占位符)。这里你可能会想,是不是可以用empty呢?让我们来看看。//html
