解开谜题:为什么输入元素缺少 ::before 和 ::after 伪元素
努力增强默认样式HTML5 输入元素中,一个常见问题是 ::after 伪元素无法呈现内容。尽管在各种浏览器上进行了多次尝试和测试,但所需的视觉增强效果仍然难以捉摸。
这种奇怪的行为激发了人们的好奇心:为什么浏览器一致忽略输入元素上的 ::after 伪元素?对 CSS 规范的彻底检查揭示了一个关键细节。根据 CSS21 规范,::after 仅适用于拥有文档树内容的元素。输入元素以及图像、换行符等元素不包含此类内容,导致 ::after 的使用无效。
因此,答案在于输入元素的本质。与携带文本内容的段落或跨度等元素不同,输入元素主要促进用户交互并且缺乏用于显示目的的内容。这种固有的特性阻止了在输入元素上使用 ::before 和 ::after 伪元素。
以上是为什么输入元素不支持 ::before 和 ::after 伪元素?的详细内容。更多信息请关注PHP中文网其他相关文章!