我创建了一个带有before-pseudo元素的'header'元素.pseudeo元素必须位于父元素后面.一切都很好,直到我给'标题'一个z-index.
我想要的是:前景中的黄色"标题",背景中的红色伪元素以及黄色"标题"元素上的简单z-index为30.
header {
background: yellow;
position:relative;
height: 100px;
width: 100px;
z-index:30; /*This is the problem*/
}
header::before {
content:"Hide you behind!";
background: red;
position:absolute;
height: 100px;
width: 100px;
top:25px;
left:25px;
z-index:-1;
}
Run Code Online (Sandbox Code Playgroud)
您可以在此链接(http://jsfiddle.net/tZKDy/)上测试我的问题,并在de'header'元素上设置/删除z-index时看到问题.
HTML
<progress max="100" value="80" data-value="5"></progress>
Run Code Online (Sandbox Code Playgroud)
CSS
progress { margin: 50px; width:250px; border:0; }
Run Code Online (Sandbox Code Playgroud)
CSS(尝试1)
progress:before, progress:after { content: attr(data-value); }
Run Code Online (Sandbox Code Playgroud)
CSS(尝试2)
progress::-webkit-progress-bar:before,
progress::-webkit-progress-bar:after { content: attr(data-value); }
progress::-moz-progress-bar:before,
progress::-moz-progress-bar:after { content: attr(data-value); }
Run Code Online (Sandbox Code Playgroud)
CSS(尝试3)
progress::-webkit-progress-value:before,
progress::-webkit-progress-value:after { content: attr(data-value); }
progress::-moz-progress-value:before,
progress::-moz-progress-value:after { content: attr(data-value); }
Run Code Online (Sandbox Code Playgroud)
上述尝试均未成功.还使用不同的CSS代码块尝试了上述每个版本的for :before
和:after
.
目的
在HTML5 <progress>
元素之前和之后注入CSS生成的内容.这可能吗?
JsFiddle演示
http://jsfiddle.net/pankajparashar/MNL2C/
UPDATE
当我使用以下CSS时,它可以工作.
progress::-webkit-progress-bar:before,
progress::-webkit-progress-bar:after { content: '123'; }
Run Code Online (Sandbox Code Playgroud)
结论
显然,当我们在CSS中注入静态内容时,它可以工作.但是,如果我们使用data-*
它的内容不.