无法控制页面,但通过CSS检测输入是否包含文本

<p>有没有办法通过CSS来检测输入框是否有文本?我尝试使用<code>:empty</code>伪类和<code>[value=""]</code>,但都没有成功。我似乎找不到一个解决方案。</p> <p>我想这一定是可能的,考虑到我们有<code>:checked</code>和<code>:indeterminate</code>这样的伪类,它们都是类似的东西。</p> <p>请注意:<strong>我是为了一个“Stylish”样式而做这个</strong>,不能使用JavaScript。</p> <p>还要注意,Stylish是在用户无法控制的页面上使用的,客户端的。</p>
# HTML
P粉850680329 P粉850680329 1079 天前 1397 次浏览

全部回复(2) 我要回复

  • P粉710478990

    P粉7104789902023-08-21 12:14:04

    您可以使用:placeholder-shown伪类。技术上来说,需要一个占位符,但您可以使用一个空格代替。

    input:not(:placeholder-shown) {
      border-color: green;
    }
    
    input:placeholder-shown {
      border-color: red;
    }
    <input placeholder="需要文本" />
    <input placeholder=" " value="这个有效" />
    <input placeholder=" " />

    回复
    0
  • 取消 回复 发送