这是我的React Code的一部分
.jsx代码
<img draggable={false} data-score={-1 * score} src={AddressConfig.fileServer + "?id=" + photos} onError={this.onError} style={{display:'inline-block'}}/>
......
onError = (e) => {
e.target.src = 'data:image/jpeg;base64,/...........'//valid img url
}
.css代码
img::after{
content:attr(data-score);
display: block;
position: absolute;
height: 15px;
width:15px;
}
当onerror事件没有被触发时,一切都很好,但是当它被触发时,::after
元素将消失。我真的对此感到困惑......
答案 0 :(得分:3)
:after
元素不支持 :before
和img
。
请参阅https://developer.mozilla.org/en-US/docs/Web/CSS/%3A%3Aafter#Caveats
::before
和::after
生成的伪元素包含在元素的格式框中,因此::before
和::after
不会适用于替换元素,例如img
或br
元素。