H5中<header><footer><nav>与<div>的区别

本文探讨了HTML5中语义化标签如&lt;header&gt;和&lt;footer&gt;的重要性及其对网页结构和搜索引擎优化的影响。通过对比&lt;div&gt;标签,展示了语义化标签如何提高代码的可读性和查找效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

区别就是没区别,在H5出现以后,主张语义化标签,<header>、<footer>等html5的这几个标签都是收集了网上数百万网站上出现概率比较多的部分确定的,比如网站80%都会用页脚来声明版权等等。

相比于普通的<div>标签,H5的一些新标签只是增强可读性,同时运行时,搜索引擎会在查找元素上更省时,看下面一段代码:

<header>
    <hgroup>
	<h1>....</h1>
	<h2>....</h2> 
    </hgroup>
    <nav>
        <ul>
            <li>....</li>
            <li>....</li>
            <li>....</li>
	    <li>....</li>    
        </ul>
    </nav>
</header>
<article>
    <section>....</section>
    <section>....</section>
    <section>....</section>
    <section>....</section>
</article>
<aside>....</aside>
<footer>....</footer>

与这一段:

<div class="header">
    <div class="hgroup">
        <h1>....</h1>
        <h2>....</h2> 
    </div>
    <div class="nav">
        <ul>
            <li>....</li>
            <li>....</li>
            <li>....</li>
            <li>....</li> 
        </ul>
    </div>
</div> 
<div class="article">
    <div class="section">....</div>
    <div class="section">....</div>
    <div class="section">....</div>
    <div class="section">....</div>
</div> 
<div class="aside">....</div> 
<div class="footer">....</div>
哪一个更清晰呢?哪一个在查找起来更省力呢?
"\n\n\n \n Avis de marché - Avis n° 25-20867 du 21/02/2025\n \n \n \n \n \n \n <div>\n <div>Avis de marché</div>\n </div>\n <div>Département(s) de publication : \n <strong>22</strong>\n \n </div>\n <div>\n Annonce n°\n <strong>25-20867</strong>\n </div>\n <div>Services</div>\n <hr />\n <div>Section 1 - Identification de l'acheteur</div>\n <div>\n <div>\n Nom et adresse officiels de l'organisme acheteur : Services Interhospitaliers du Tregor Goëlo</div>\n <div>\n Correspondant : MME Marie-Laure LE BERRE</div>\n <div>\n Adresse : 2 rue Louis PASTEUR,\n 22220 \n Minihy-Treguier\n </div>\n <div>\n Coordonnées :\n <div>\n <div>\n Courriel :\n Contact@si-tregorgoelo.fr\n </div>\n </div>\n </div>\n </div>\n <div>Section 2 - Description du marché</div>\n <div>\n <div>\n Objet du marché : Prestation de maintenance et assistance relative à l'infrastructure et au parc \ninformatique</div>\n <div>\n Lieu d'exécution et de livraison :2 rue Louis PASTEUR,\n 22220 \n Minihy-treguier\n </div>\n </div>\n <div>Section 8 - Mode de passation du marché</div>\n <div>\n <div>\n Type de procédure : procédure adaptée</div>\n </div>\n <div>Section 10 - Conditions de délai</div>\n <div>\n <div>\n Date limite de réception des offres : 21/03/2025 à 12:00</div>\n </div>\n <div>Section 11 - Autres renseignements</div>\n <div>\n <div>\n Numéro de référence attribué au marché par le pouvoir\n adjudicateur / l'entité adjudicatrice :\n 2025-02</div>\n </div>\n <div>Section 12 - Adresses complémentaires</div>\n <div>\n <div>\n Adresse auprès de laquelle les documents peuvent être\n obtenus :\n \n <div>\n <div>\n Coordonnées : \n <div>\n <div>\n Adresse internet :\n <a>\n https://www.achatpublic.com/sdm/ent/gen/ent_detail.do?PCSLID=CSL_2025_PzUIi1q4Pa\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <hr />\n <div>\n Date d'envoi du présent avis à la publication : 21/02/2025</div>\n \n\n\n \n \n "将这串字符串使用jsoup去除html标签后,将文本中的多个连续\n替换为单个\n,原本的单个\n不动,输出代码处理后的结果
最新发布
07-09
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>板材库存查询系统</title> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"> <!-- 引入 Popper.js 和 Bootstrap JS --> <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.min.js"></script> <script src="../js/main.js"></script> <style> .card-header { background: linear-gradient(to right, #1e3c72, #2a5298); color: white; } .search-section { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); border-radius: 10px; } .result-section { max-height: 70vh; overflow: auto; border-left: 3px solid #1e3c72; } .table-hover tbody tr:hover { background-color: rgba(42, 82, 152, 0.05); } .material-kucun { font-weight: 700; color: #1e3c72; } .material-kucun-low { color: #dc3545 !important; } .no-results { min-height: 200px; display: flex; align-items: center; justify-content: center; } .stats-card { border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); } body { background-color: #f8f9fa; padding-bottom: 2rem; } .search-control { position: relative; } .search-icon { position: absolute; left: 12px; top: 12px; color: #6c757d; } .form-control.with-icon { padding-left: 35px; } .highlight { background-color: rgba(255, 255, 0, 0.3) !important; } .info-badge { font-size: 0.8rem; font-weight: normal; } </style> </head> <body> <div class="container py-4"> <!-- 标题部分 --> <div class="text-center mb-4"> <h1 class="text-primary"><i class="bi bi-boxes"></i> 板材库存管理系统</h1> <p class="text-muted">查询订单、产品、板材及库存信息</p> </div> <!-- 统计卡片 --> <div class="row mb-4"> <div class="col-md-3"> <div class="card stats-card border-primary"> <div class="card-body"> <h5 class="card-title">订单总数</h5> <p class="card-text fs-3 text-primary" id="orderCount">0</p> </div> </div> </div> <div class="col-md-3"> <div class="card stats-card border-info"> <div class="card-body"> <h5 class="card-title">产品种类</h5> <p class="card-text fs-3 text-info" id="productCount">0</p> </div> </div> </div> <div class="col-md-3"> <div class="card stats-card border-success"> <div class="card-body"> <h5 class="card-title">板材库存</h5> <p class="card-text fs-3 text-success" id="materialCount">0</p> </div> </div> </div> <div class="col-md-3"> <div class="card stats-card border-warning"> <div class="card-body"> <h5 class="card-title">库存总量</h5> <p class="card-text fs-3 text-warning" id="totalStock">0</p> </div> </div> </div> </div> <!-- 搜索区域 --> <div class="card search-section mb-4"> <div class="card-header"> <h5 class="mb-0"><i class="bi bi-search me-2"></i>高级搜索</h5> </div> <div class="card-body"> <div class="row g-3"> <!-- 订单搜索 --> <div class="col-md-6"> <div class="search-control"> <i class="bi bi-clipboard-search search-icon"></i> <input type="text" class="form-control with-icon" id="orderSearch" placeholder="搜索订单号..." aria-label="订单号搜索"> </div> </div> <!-- 产品搜索 --> <div class="col-md-6"> <div class="search-control"> <i class="bi bi-grid search-icon"></i> <input type="text" class="form-control with-icon" id="productSearch" placeholder="搜索产品编号..." aria-label="产品编号搜索"> </div> </div> <!-- 板材搜索 --> <div class="col-md-4"> <div class="search-control"> <i class="bi bi-box search-icon"></i> <input type="text" class="form-control with-icon" id="materialSearch" placeholder="搜索板材ID或材质..." aria-label="板材搜索"> </div> </div> <!-- 木皮搜索 --> <div class="col-md-4"> <div class="search-control"> <i class="bi bi-tree search-icon"></i> <input type="text" class="form-control with-icon" id="woodSearch" placeholder="搜索木皮名称..." aria-label="木皮搜索"> </div> </div> <!-- 厚度范围 --> <div class="col-md-4"> <div class="input-group"> <span class="input-group-text"><i class="bi bi-arrows-vertical"></i></span> <input type="number" class="form-control" id="minThickness" placeholder="厚度(mm)" min="0" step="0.1"> <button class="btn btn-primary" type="button" id="thicknessBtn"> <i class="bi bi-arrow-right"></i> </button> </div> </div> </div> </div> </div> <!-- 结果区域 --> <div class="card"> <div class="card-header d-flex justify-content-between align-items-center"> <h5 class="mb-0"><i class="bi bi-table me-2"></i>查询结果</h5> <div class="text-secondary"> <span id="resultCount">0</span> 条记录 <span class="ms-2"><i class="bi bi-info-circle"></i> <small>实时数据更新时间: <span id="lastUpdate">--:--:--</span></small></span> </div> </div> <div class="card-body result-section"> <div class="table-responsive"> <table class="table table-hover" id="resultTable"> <thead class="table-light sticky-top"> <tr> <th>订单号</th> <th>产品信息</th> <th>产品数量</th> <th>组件</th> <th>板材</th> <th>板材/组件</th> <th>板材订购数量</th> <th>操作</th> </tr> </thead> <tbody id="resultBody"> <!-- 数据加载中 --> <tr id="loadingRow"> <td colspan="9" class="text-center py-5"> <div class="d-flex align-items-center justify-content-center"> <div class="spinner-border text-primary" role="status"> <span class="visually-hidden">加载中...</span> </div> <div class="ms-3">正在加载数据,请稍候...</div> </div> </td> </tr> </tbody> </table> </div> <!-- 空结果提示 --> <div id="noResults" class="no-results text-center py-5" style="display: none;"> <div> <i class="bi bi-inboxes text-muted" style="font-size: 3rem;"></i> <h4 class="mt-3 text-muted">没有找到匹配的记录</h4> <p class="text-muted">请尝试调整您的搜索条件</p> </div> </div> </div> </div> </div> <script type="text/javascript"> </script> <script src="../js/dingdan.js"></script> 改造为契合的html
06-20
<%-- Created by IntelliJ IDEA. User: vili Date: 2019/8/23 Time: 13:56 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@page isELIgnored="false" %> <html> <head> <title>商品列表</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link type="text/css" rel="stylesheet" href="css/bootstrap.css"> <link type="text/css" rel="stylesheet" href="css/style.css"> <script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="js/bootstrap.min.js"></script> <script type="text/javascript" src="layer/layer.js"></script> <script type="text/javascript" src="js/cart.js"></script> </head> <body> <!--header--> <jsp:include page="/header.jsp"> <jsp:param name="flag" value="1"></jsp:param> </jsp:include> <!--banner--> <div class="banner"> <div class="container"> <h2 class="hdng"><a href="book_detail.action?bid=${scrollBook.bid}">${scrollBook.bname}</a><span></span></h2> <p>今日精选推荐</p> <a class="banner_a" href="javascript:;" onclick="buy(${scrollBook.bid})">立刻购买</a> <div class="banner-text"> <a href="book_detail.action?bid=${scrollBook.bid}"> <img src="${scrollBook.bcover}" alt="${scrollBook.bname}" width="350" height="350"> </a> </div> </div> </div> <!--//banner--> <!--gallery--> <div class="gallery"> <div class="container"> <div class="alert alert-danger">热销推荐</div> <div class="gallery-grids"> <c:forEach items="${hotList}" var="book"> <div class="col-md-4 gallery-grid glry-two"> <a href="book_detail.action?bid=${book.bid}"> <img src="${book.bcover}" class="img-responsive" alt="${book.bname}" width="350" height="350"/> </a> <div class="gallery-info galrr-info-two"> <p> <span class="glyphicon glyphicon-eye-open" aria-hidden="true"></span> <a href="book_detail.action?bid=${book.bid}">查看详情</a> </p> <a class="shop" href="javascript:;" onclick="buy(${book.bid})">立刻购买</a> <div class="clearfix"> </div> </div> <div class="galy-info"> <p>${book.btname} > ${book.bname}</p> <div class="galry"> <div class="prices"> <h5 class="item_price">¥ ${book.bprice}</h5> </div> <div class="clearfix"></div> </div> </div> </div> </c:forEach> </div> <div class="clearfix"></div> <div class="alert alert-info">新品推荐</div> <div class="gallery-grids"> <c:forEach items="${newList}" var="book"> <div class="col-md-3 gallery-grid "> <a href="book_detail.action?bid=${book.bid}"> <img src="${book.bcover}" class="img-responsive" alt="${book.bname}"/> </a> <div class="gallery-info"> <p> <span class="glyphicon glyphicon-eye-open" aria-hidden="true"></span> <a href="book_detail.action?bid=${book.bid}">查看详情</a> </p> <a class="shop" href="javascript:;" onclick="buy(${book.bid})">立刻购买</a> <div class="clearfix"> </div> </div> <div class="galy-info"> <p>${book.btname} > ${book.bname}</p> <div class="galry"> <div class="prices"> <h5 class="item_price">¥ ${book.bprice}</h5> </div> <div class="clearfix"></div> </div> </div> </div> </c:forEach> </div> </div> </div> <!--//gallery--> <!--subscribe--> <div class="subscribe"></div> <!--//subscribe--> <!--footer--> <jsp:include page="/footer.jsp"></jsp:include> </body> </html> <%-- Created by IntelliJ IDEA. User: vili Date: 2019/8/24 Time: 17:09 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@page isELIgnored="false" %> <!DOCTYPE html> <html> <head> <title>后台管理</title> <link rel="stylesheet" href="css/bootstrap.css"/> </head> <body> <div class="container-fluid"> <jsp:include page="header.jsp"></jsp:include> <br><br> <div class="alert alert-success" role="alert">欢迎进入叮当书城后台管理系统!</div> </div> </body> </html> 如何使后台管理页面能从主页进行跳转,直接输出修改后的代码
06-20
base.html <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>中学信息查询系统</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet"> </head> <body> <nav class="navbar navbar-expand-lg navbar-dark bg-primary"> <div class="container"> <a class="navbar-brand" href="/">中学信息查询</a> <div class="navbar-text ms-auto"> 学号: 22300434 | 姓名: 王渝钦 | 籍贯: 桂林市 </div> </div> </nav> <div class="container mt-4"> {% block content %}{% endblock %} </div> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> </body> </html> cities.html {% extends "base.html" %} {% block content %} <h2>地级市列表</h2> <div class="row"> {% for city in cities %} <div class="col-md-4 mb-4"> <div class="card"> <div class="card-body"> <h5 class="card-title">{{ city.name }}</h5> <p class="card-text">电话区号: {{ city.area_code }}</p> <a href="{{ url_for('city_detail', city_id=city.id) }}" class="btn btn-primary">查看详情</a> </div> </div> </div> {% endfor %} </div> {% endblock %} city_detail.html {% extends "base.html" %} {% block content %} <div class="card"> <div class="card-header"> <h2>{{ city.name }}</h2> </div> <div class="card-body"> <p><strong>电话区号:</strong> {{ city.area_code }}</p> <div class="mt-3"> <h4>简介</h4> <p>{{ city.description }}</p> </div> <div class="mt-4"> <h4>所属中学</h4> <ul class="list-group"> {% for school in city.schools %} <li class="list-group-item"> <a href="{{ url_for('school_detail', school_id=school.id) }}" style="text-decoration: none !important; color: inherit; transition: color 0.3s;" onmouseover="this.style.color='#800080'" onmouseout="this.style.color='inherit'">{{ school.name|replace("_", " ") }}</a> <span class="badge bg-secondary">{{ school.district }}</span> </li> {% endfor %} </ul> </div> </div> <div class="card-footer"> <a href="{{ url_for('cities') }}" class="btn btn-secondary">返回列表</a> </div> </div> {% endblock %} Index.html {% extends "base.html" %} {% block content %} <div class="jumbotron"> <h1 class="display-4">欢迎使用中学信息查询系统</h1> <p class="lead">查询各地级市及其中学的详细信息</p> <hr class="my-4"> <div class="row"> <div class="col-md-6"> <a href="{{ url_for('cities') }}" class="btn btn-primary btn-lg btn-block">查看所有地级市</a> </div> <div class="col-md-6"> <a href="{{ url_for('schools') }}" class="btn btn-success btn-lg btn-block">查看所有中学</a> </div> </div> </div> {% endblock %} school_detail.html {% extends "base.html" %} {% block content %} <div class="card"> <div class="card-header"> <h2>{{ school.name }}</h2> </div> <div class="card-body"> <p><strong>所在城区:</strong> {{ school.district }}</p> <p><strong>所属城市:</strong> <a href="{{ url_for('city_detail', city_id=school.city.id) }}">{{ school.city.name }}</a></p> <div class="mt-3"> <h4>简介</h4> <p>{{ school.description }}</p> </div> </div> <div class="card-footer"> <a href="{{ url_for('schools') }}" class="btn btn-secondary">返回列表</a> </div> </div> {% endblock %} Scholl.html {% extends "base.html" %} {% block content %} <h2>中学列表</h2> <div class="row mb-4"> <div class="col-md-8"> <form class="row g-3"> <div class="col-md-5"> <select name="city_id" class="form-select"> <option value="">所有城市</option> {% for city in cities %} <option value="{{ city.id }}" {% if city.id|string == selected_city %}selected{% endif %}> {{ city.name }} </option> {% endfor %} </select> </div> <div class="col-md-5"> <input type="text" name="search" class="form-control" placeholder="搜索中学名称" value="{{ search or '' }}"> </div> <div class="col-md-2"> <button type="submit" class="btn btn-primary">筛选</button> </div> </form> </div> </div> <table class="table table-striped"> <thead> <tr> <th>中学名称</th> <th>所在城区</th> <th>邮编</th> <th>所属城市</th> <th>操作</th> </tr> </thead> <tbody> {% for school in schools %} <tr> <td>{{ school.name }}</td> <td>{{ school.district }}</td> <td>{{ school.postal_code }}</td> <td><a href="{{ url_for('city_detail', city_id=school.city.id) }}" style="text-decoration: none !important; color: inherit; transition: color 0.3s;" onmouseover="this.style.color='#800080'" onmouseout="this.style.color='inherit'">{{ school.city.name|replace("_", " ") }}</a></td> <td><a href="{{ url_for('school_detail', school_id=school.id) }}" class="btn btn-sm btn-info">详情</a></td> </tr> {% endfor %} </tbody> </table> {% endblock %} 为什么运行之后邮编没有显示
06-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值