如果我有一个光子列表,如何使用CSS伪元素:before {content:’‘}来影响<option>
?下面有三个选项,我想在每个选项之前插入文本。
我知道可以使用javascript / jQuery完成此操作,但是CSS是否可行?
<html>
<head>
<style>
option::before {
content: "sandy - "
}
</style>
</head>
<body>
<select>
<option>beach</option>
<option>field</option>
<option>carpet</option>
</select>
</body>
</html>
实际上,::before
和和::after
伪元素在子元素之前/之后添加了一个子节点,因此,这对不能包含子节点的任何元素都无效。
(大致)等同于:
<option><span>sandy - </span>beach</option>
如果要更新文本值,则需要使用JavaScript。
主要内容:1. ::after,2. ::before,3. ::first-letter,4. ::first-line,5. ::selection,6. ::placeholder伪元素是一个附加在选择器末尾的关键词,通过伪元素您不需要借助元素的 ID 或 class 属性就可以对被选择元素的特定部分定义样式。例如通过伪元素您可以设置段落中第一个字母的样式,或者在元素之前、之后插入一些内容等等。 在 CSS1 和 CSS2 中,伪元素的使用与伪类相同,都是使一个冒号 与选择器相连。但在 C
CSS伪元素是用来添加一些选择器的特殊效果。 语法 伪元素的语法:selector:pseudo-element {property:value;} CSS类也可以使用伪元素:selector.class:pseudo-element {property:value;} :first-line 伪元素 "first-line" 伪元素用于向文本的首行设置特殊样式。 在下面的例子中,浏览器会根据 "
问题内容: 我正在使用和CSS伪元素,并且它在 IE8 和所有现代浏览器中都可以正常工作,但在 IE7中 却不能正常工作。在 IE7中 是否存在已知的解决方法? 问题答案: 我在项目中使用的是IE8.js(http://code.google.com/p/ie7-js/),我必须将其删除,因为它在10/15秒内阻止了IE7。 为了保留用:after和:before伪元素生成的内容,而没有IE8.j
问题内容: 在以下情况下,为什么:after选择器需要content属性才能起作用? 请注意,直到您指定content属性,您才看不到伪元素: 为什么这是预期的功能?您可能会认为显示块将迫使该元素显示出来。奇怪的是,您实际上可以在Web调试器中看到样式。但是,它们不会显示在页面上。 问题答案: 以下是各种W3C规范和草案的参考: 选择器级别3 伪元素’:before’和’:after’可用于在元素
问题内容: 我正在尝试为HTML5中的提出一些好的默认样式,并尝试了以下方法: las,内容从不显示。对于伪元素,双冒号和单冒号都不是问题。我都尝试过。拥有一个伪元素和一个伪类也不是问题。我已经尝试过不使用和了。在Chrome,Safari和Firefox中,我得到了相同的行为(Firefox没有和类,但是我尝试了不使用它们。) 在伪元素工作细,,,和元素-其中一些是块元件和一些是内联。 因此,我
问题内容: 有没有办法使用jQuery 选择/处理CSS伪元素,例如和(以及带有分号的旧版本)? 例如,我的样式表具有以下规则: 如何使用jQuery将’foo’更改为’bar’? 问题答案: 您还可以将内容传递给具有data属性的伪元素,然后使用jQuery进行操作: 在HTML中: 在jQuery中: 在CSS中: 如果要防止显示“其他文本”,可以将其与seucolega的解决方案结合使用,如