IE not coloring :before as table-cell, why?

白昼怎懂夜的黑 提交于 2019-11-29 13:36:39

This appears to be a bug in IE. If you inspect the element in IE 11 Developer Tools, you see all the declarations for the :before pseudo-element struck out (also e.g. font settings if you add them), but the display and content settings affect the rendering.

To circumvent this bug, it suffices in this simple case to set display: block as @BeatAlex suggests. In a more complicated situation, you probably need more complicated workarounds.

This appears to be a regression. It works on IE8 on Windows 7, but not IE9 or later, even in IE8 mode. Funny I didn't notice this earlier, as I remember encountering the same issue myself some time ago. I never considered something like this could possibly regress, though, much less thought of comparing the results in IE8 and IE9.

Other font-related styles are affected as well. It has been reported before, but there doesn't seem to have been any response other than "we're looking into it", and that was a year ago.

Workarounds include using display: table-cell with an actual element instead of a pseudo-element, or simply not using display: table-cell at all — use display-block instead if you don't absolutely need a table-based layout.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!