CSS::在Safari中未更新位置后

CSS::在Safari中未更新位置后,css,safari,Css,Safari,我在Safari中遇到了CSS问题。更改html元素的文本后::After的位置不会更新 $(“#视图”).text(“短文本”);//不更新#view::after伪元素的位置 但在Chrome和Firefox中工作得非常完美 知道为什么吗?似乎只是Safari中的一个bug。如果你强制回流,它会自行修复 例如,基于以下方面的建议: 调用height()将强制浏览器在样式更改后重新渲染跨度(以便它可以计算“新”高度)。如果没有它,更新只会合并成一个,什么也不会发生。使用带有零超时的setT

我在Safari中遇到了CSS问题。更改html元素的文本后::After的位置不会更新

$(“#视图”).text(“短文本”);//不更新#view::after伪元素的位置

但在Chrome和Firefox中工作得非常完美


知道为什么吗?

似乎只是Safari中的一个bug。如果你强制回流,它会自行修复

例如,基于以下方面的建议:

调用
height()
将强制浏览器在样式更改后重新渲染跨度(以便它可以计算“新”高度)。如果没有它,更新只会合并成一个,什么也不会发生。使用带有零超时的
setTimeout(…)
可以实现类似的效果

更新小提琴:

    var span=$('#view');
    span.text("Changing text does not update").css("display","inline-block").height();
    span.css("display","inline");