首页 > web前端 > css教程 > 为什么 `input:not(:empty)` 永远不会匹配任何元素?

为什么 `input:not(:empty)` 永远不会匹配任何元素?

Mary-Kate Olsen
发布: 2024-11-04 18:14:01
原创
354 人浏览过

Why Does `input:not(:empty)` Never Match Any Element?

理解 :not(:empty) CSS 选择器

:not() 选择器否定括号内指定的匹配条件。当应用于 :empty 伪类时,:not(:empty) 选择器应该定位非空元素。然而,用户在使用这种组合时遇到了困难。

Void 元素问题

元素是一个空元素,这意味着它没有任何内容。根据“空”的 HTML 定义,void 元素始终被视为空。这意味着它们将始终匹配 :empty 伪类,无论它们是否有值。

选择器规范含义

选择器规范进一步阐明了:empty 伪类匹配没有子节点的元素或长度非零的内容节点。因此,input:not(:empty) 的组合永远不会匹配有效 HTML 文档中的任何元素。

替代解决方案

将空 样式化单独使用 CSS 动态地显示字段可能具有挑战性。但是,可以选择缺少值属性 (input[value=""]) 或具有空值属性 (input:not([value])) 的初始空字段。除了这些选项之外,可能还需要其他方法来解决空 的样式问题。田野。

以上是为什么 `input:not(:empty)` 永远不会匹配任何元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板