【问题标题】:Why is my style not being applied to a non-HTML element in IE?为什么我的样式没有应用于 IE 中的非 HTML 元素?
【发布时间】:2009-07-29 20:40:07
【问题描述】:

这在 IE6 或 7 中不起作用:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <title>Title</title>
    <style type="text/css">
        N {display: block}
    </style>

</head>
<body>
    <div>
        <N>element1</N>
        <N>element2</N>
        <N>element3</N>
        <N>element4</N>
    </div>
</body>
</html>

但是,如果我将 N 个标签替换为 A 个标签,它就可以了。

IE 对非 HTML 标签的样式有问题吗?还是别的什么?

【问题讨论】:

    标签: html css internet-explorer


    【解决方案1】:

    IE的样式有问题吗 非 HTML 标签?

    是的。不会的。

    可以使用以下方法破解它:

    <script type="text/javascript">
    document.createElement('n');
    </script>
    

    ……但是如果 JS 不可用并且文档仍然无效,这将不起作用。

    如果不存在描述您想要的语义的元素,则使用最匹配的元素(或 div/span,如果没有更好的存在)并添加类。

    (或切换到自定义 XML 语言)

    【讨论】:

    • 正确。黑客现在会做得很好!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-23
    • 2013-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多