css - 我是否需要为部分标签设置样式以实现向后兼容性?

标签 css html

现在我正尝试加入 HTML5 的行列,因为它已经获得更多的覆盖并且是一个成熟的规范。


而不是为此使用 div 标签:

<div class="page-item">
    <h2>Google rumored to purchase WhatsApp for $1 Billion dollars.</h2>

    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi 
        in felis nisi, quis vulputate odio. Proin eu est dolor, non 
        feugiat dui. Cras tristique, arcu nec adipiscing varius, nibh 
        dolor fermentum nibh, in elementum justo dolor et enim. Nullam 
        libero dui, tristique ut pulvinar at, consequat malesuada nisl. 
        Vestibulum sed elit purus, id posuere neque. Pellentesque luctus 
        libero quis risus ullamcorper sollicitudin. Pellentesque dictum, 
        est et blandit placerat, mi erat tempus diam, et aliquet ipsum felis 
        sit amet risus. Proin pretium accumsan tincidunt. Pellentesque vel 
        tortor lacus, sit amet aliquam mi. Donec tincidunt ullamcorper 
        molestie.</p>
</div>

我想使用 section 标签:

<section>
    <h2>Google rumored to purchase WhatsApp for $1 Billion dollars.</h2>

    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi 
        in felis nisi, quis vulputate odio. Proin eu est dolor, non 
        feugiat dui. Cras tristique, arcu nec adipiscing varius, nibh 
        dolor fermentum nibh, in elementum justo dolor et enim. Nullam 
        libero dui, tristique ut pulvinar at, consequat malesuada nisl. 
        Vestibulum sed elit purus, id posuere neque. Pellentesque luctus 
        libero quis risus ullamcorper sollicitudin. Pellentesque dictum, 
        est et blandit placerat, mi erat tempus diam, et aliquet ipsum felis 
        sit amet risus. Proin pretium accumsan tincidunt. Pellentesque vel 
        tortor lacus, sit amet aliquam mi. Donec tincidunt ullamcorper 
        molestie.</p>
</section>

我需要应用什么样的样式才能让这个 section 标签在旧式浏览器中尽可能地工作? (IE7 及以上)

最佳答案

首先我认为你应该使用 <h1>作为 <section> 的第一个标题,尽管有人可以纠正我。

IE8- 根本不支持这些标签,并且会忽略与它们关联的任何样式。有两个相当简单的解决方案。一种是添加

document.createElement('section');

<section> 之前元素出现。然后,IE 出于某种原因应用样式。有很多 HTML5 shims/shivs 可以对所有新元素执行此操作。

如果你不能依赖 JS 或出于某种原因不想这样做,你可以始终保留 <div>用于造型,只保留 <section>对于语义。拥有 <div> 并没有坏处因为它除了分组元素之外没有语义意义,<section>也是。

关于css - 我是否需要为部分标签设置样式以实现向后兼容性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15865035/

相关文章:

javascript - 用于滚动面包屑的 CSS

javascript - 触摸图像 slider : next/prev keys interfere with code for current slide

css - 如何填充form.well的宽度?

jquery - 输入 .value 返回 undefined

html - 导航栏干扰标题 HTML/CSS

javascript - 如何全局存储颜色,以便它们在 js、css 和 html 中可见?

css - 如何检查哪些字体已加载但未在网站上使用?

javascript - onClick on commandLink 设置该链接所附图像的 css

html - 仅使用 CSS 显示带有悬停的相邻 div

javascript - 如何构建一个 jQuery 支持的切换器来添加/删除 css 属性?