jquery mobile中页面的tag div和tag部分之间有什么区别

时间:2011-08-17 17:59:36

标签: html5 jquery-mobile

我看到div中使用了sectiondata-role="page"。例如

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<p>This content will be ignored.</p>
<!-- Begin Page 4 -->
<section id="page4" data-role="page">
<header data-role="header"><h1>jQuery Mobile</h1></header>
<div class="content" data-role="content">
<p>External Page!</p>
<p><a href="#page1">Go to First Page</a>.</p>
</div>
<footer data-role="footer"><h1>O'Reilly</h1></footer>
</section>
<!-- End Page 4-->
<h3>This content will be ignored as well.</h3>
</body>
</html>

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Intro to jQuery Mobile</title>
        <link rel="stylesheet" href="http://code.jquery.com/mobile
/1.0a2/jquery.mobile-1.0a2.min.css" />
        <script src="http://code.jquery.com/jquery-1.4.4.min.js"></script>
        <script src="http://code.jquery.com/mobile/1.0a2
/jquery.mobile-1.0a2.min.js"></script>
    </head>
    <body>

        <div data-role="page">

            <div data-role="header">
               <h1>Facebook Friends</h1>
            </div><!-- /header -->

            <div data-role="content">

            </div><!-- /content -->

            <div data-role="footer">
            </div><!-- /footer -->
        </div><!-- /page -->

    </body>
</html>

有什么区别以及section的用途是什么?当它没有显示时会阻止加载内容吗?

1 个答案:

答案 0 :(得分:43)

SECTION只是一个HTML5标签。由于HTML5相对较新,许多开发人员使用不当,或者您只会看到项目的某些部分更新以使用新标记,而其余部分继续使用DIV标记。您提供的使用SECTION的代码似乎在适当的位置和上下文中使用它,只是为了给您一个想法。

查看关于SECTION标签的这篇简短文章以及何时使用它,不要认为SECTION只是DIV的一个奇特名称:http://www.impressivewebs.com/html5-section/

此外,查看规格永远不会受到伤害:http://w3c.github.io/html/sections.html#the-section-element

对你的问题的简短回答是,没有实际的区别 - 就CSS如何影响它以及如何使用javascript来处理它时,SECTION标签的行为与DIV标签完全相同。真正的区别在于在创建文档大纲时如何解释标记,例如,通过提要阅读器。

data-*属性是一个新的HTML5添加(article),允许您将任意数据与HTML元素相关联。可以通过javascript利用属性中的数据来实现工具提示或地理位置数据等功能。以前,这些数据涉及隐藏的子元素或JSON数据,或者是从服务器获取此类数据的新AJAX请求。现在,javascript可以简单地读取这些数据属性以获取有关给定元素的关联数据。我不确定您的特定脚本是如何使用data-role属性的,但是如果属性在DIV,SECTION,IMG或SPAN上,则无关紧要。 / p>