前端开发设计符合标准的结构

一、元素显示类型

1、认识元素显示类型

  • 块状显示
    块状状显示会把元素当作一个长方形的木板显示出来,如果为块状元素设置边框,则可以清晰地看见它的轮廓。它拥有清晰的宽、高、边界、边框、补自和背景等基本属性。
    块状元素具有两个基本的特性。
    第一,块状元素默认宽度都是100%,即块状元素会挤满一行显示。
    第二,块状元素的末尾都会隐藏一个换行符,当然是看不见它的。但是可以看到效果,也就是说,块状元素后面不能够再跟着显示其他行内元素或者块状元素。
  • 行内显示
    行内显示没有块状显示的轮廓,因此可以形象地把它联想为一个皮纸袋子。如果为行内元素描一个边,有时显示的是不规则的。同时,行内元素正如它的名字所说的那样,多个行内元素并列显示在同一行内。
    行内元素也具有两个基本的特性。
    第一,行内元素没有高度和宽度,即使为它定义高度,但是浏览器在解析时也不会显示。
    第二,行内元素的呈现效果与块状元素存在很大区别,这不仅仅体现在宽和高方面,它们可以并列显示,随行移动。
  • 行内块状显示
    行内块状显示是行内显示和块状显示的结合,拥有块状和行内元素的各自优势。但是默认状态下,元素不会显示该状态,需要使用CSS声明。
  • 表格显示
    表格也是一种块状元素,但是它还具有一些其他特性,如更严格的组织性,表格元素之间的严密协调性等。表格显示还包括表格、行、单元格、标题、列、组等不同的显示性质和效果。
  • 列表显示
    列表也属于块状元素,但是它拥有项目符号等一些其他特性。

2、块状元素

在网页设计中,块状元素主要用来定义页面结构、布局结构、构建网页基本框架和结构。HTML4默认的块状元素包括以下方面。
默认的块状元素包括以下方面。

  • html、body、 frameset、 frame、 noframes、iframe:网页、框架基本结构块。
  • form、fieldset、legend:表单结构
  • div:布局结构块
  • p:段落结构块。
  • h1、h2、h3、h4、h5、h6:标题结构块。
  • ol、ul、dl、dt、dd、menu、dir:列表结构块。
  • col、colgroup:表格列结构块。
  • center:居中结构块。
  • pre:预定义结构块。
  • address:引用结构块。
  • blockquote:特定信息结构块。
  • hr:结构装饰线。
  • isindex:交互提示框。
  • title:网页标题框。

在上面结构块列表中,div是网页布局最常用的元素,然后是段落、标题和列表元素,在网页布局中都是使用频率最高的元素。块状元素能够嵌套其他块状、行内等不同类型的元素,因此,它们主要负责网页结构的支撑和构建。

hr、isindex和title块状元素有点特殊,它们不直接参与到网页结构构建中。pre、address和blockquote主要用于网页内容排版中。center结构块虽然可以参与网页布局,但是可以使用CSS代替其功能,所以不建议选用元素。

3、行类元素

在网页设计中,行内元素主要用来定义特定语义信息。HTML4默认的行内元素包括以下方面。

  • span:行内包含框。
  • a、area:超链接和映射包含框。
  • img:图像包含框。
  • abbr、 acronym、 b、 bdo、big、 cite、 code、del、dfn、em、font、i、ins、kbd、q、s、samp、small、 strike、 strong、sub、sup、tt、u、var:格式化信息包含框。
  • button、 select、textarea、label:表单对象包含框。
  • applet、object:可执行的插件或对象包含框。
  • caption:表格标题包含框。
  • noscript:无脚本包含框。

在行内元素中,使用最频繁的是span元素,该元素常用来作为修饰行内文本或对象的样式。

行内元素是不能用来进行网页结构构建的,虽然这样操作不会影响页面的解析效果,但是它不符合HTML结构嵌套规范,不建议使用。同时,也不建议在行内元素中包含其他块状元素,这样会严重破坏结构的逻辑关系。

4、其他元素

头部区域隐藏元素

  • head:头部包含框。
  • base:URL基础。
  • basefont: 默认基础字体属性。
  • link:链接。
  • meta:元信息。
  • script:脚本。
  • style:样式。
    行内块状元素
  • input:输入框。
  • optgroup:下拉项分组。
  • option:下拉项。
    列表项元素
  • li:列表项。
    结构内隐藏元素
  • map:图像映射包含框。
  • param:参数。
  • br:换行。
    表格系列类型元素
  • table:表格框显示。
  • tr:表格行显示。
  • td:单元格显示。
  • th:表格标题显示。
  • tbody:表格行组显示。
  • tfoot:表格脚注组显示。
  • thead:表格标题组显示。

二、结构嵌套规则

1、分析结构乱套现象

示例一

<span>
	<div>
		<h2></h2>
		<p></p>
	</div>
</span>

严格说这种结构是不规范的,因为span元素内部不能够包含块状元素。但是浏览器斌没有提示错误或禁止解析,养成习惯后就觉得无所谓。

【示例2】

<ul>
	<h2>标题</h2>
	<li>列表</li>
	<li>列表</li>
</ul>

这种用法也是不规范的。ul、ol、dl元素不能够直接包含标题元素,但是可以写成这样:

<ul>
	<li><h2>标题</h2></li>
	<li>列表</li>
	<li>列表</Ii> 
</ul> 

【示例3】结构嵌套的随意性还有很多。把图像作为body元素的子元素直接插入到页面中,这 样是不妥的,一是结构嵌套有误,二是图像控制不方便。

<body>
	<img src="" />
</body>

或者把一个块状元素包含在p、h1、h2、h3、h4、h5或h6元素中。

<p>段落文本<div>其他对象</div>
</p> 

上面这种做法也是不建议使用的。总之,类似的这种无意识的错误还有很多。虽然它们都能够正确显示,但是结构嵌套得很滑稻

2、严谨的嵌套规则

在HTML中,元素嵌套需要遵循一定的规则,以确保页面结构的合理性和兼容性。以下是HTML中常见的嵌套规则:

  1. 块级元素(block-level elements)可以包含内联元素(inline elements)和其他块级元素。例如,<div><p><ul>等块级元素可以包含<a><strong><em>等内联元素。

  2. 内联元素(inline elements)只能包含其他内联元素,不能在内部包含块级元素。例如,<a><strong><em>等内联元素不能在内部包含<div><p>等块级元素。

  3. 某些元素有特定的嵌套规则,例如:

    • <li>元素只能在<ul><ol><menu>元素内。
    • <dt><dd>元素只能在<dl>元素内。
    • <thead><tbody><tfoot>元素只能在<table>元素内。
    • <tr>元素只能在<table><thead><tbody><tfoot>元素内。
    • <td><th>元素只能在<tr>元素内。
  4. 某些元素不能嵌套在任何其他元素内,例如:<html><body><head><title>等。

  5. 避免过多的嵌套层次。过多的嵌套层次会导致HTML结构复杂,难以维护,并且可能导致性能问题。一般建议嵌套层次不超过3层。

要编写干净的HTML代码,需要遵循内容与表现分离的原则,尽量减少在HTML中添加样式和JavaScript代码。同时,使用HTML5语义化标签可以让页面结构更加清晰易懂。

3、HTML嵌套规则应用

在HTML开发中,正确应用嵌套规则是非常重要的。以下是一些关于HTML嵌套规则的应用示例:

  1. 标题和段落嵌套:
<h1>这是一个主标题</h1>
<p>这是一个段落。</p>
<h2>这是一个次级标题</h2>
<p>这是另一个段落。</p>
  1. 无序列表嵌套:
<ul>
  <li>列表项1</li>
  <li>列表项2
    <ul>
      <li>子列表项1</li>
      <li>子列表项2</li>
    </ul>
  </li>
  <li>列表项3</li>
</ul>
  1. 表格嵌套:
<table>
  <thead>
    <tr>
      <th>列1</th>
      <th>列2</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>数据1</td>
      <td>数据2</td>
    </tr>
    <tr>
      <td>数据3</td>
      <td>数据4</td>
    </tr>
  </tbody>
  <tfoot>
    <tr>
      <td>总计</td>
      <td>数据5</td>
    </tr>
  </tfoot>
</table>
  1. 表单嵌套:
<form>
  <div>
    <label for="username">用户名:</label>
    <input type="text" id="username" name="username">
  </div>
  <div>
    <label for="password">密码:</label>
    <input type="password" id="password" name="password">
  </div>
  <div>
    <button type="submit">提交</button>
  </div>
</form>
  1. 语义化嵌套:
<header>
  <h1>页面标题</h1>
</header>
<main>
  <article>
    <h2>文章标题</h2>
    <p>文章正文。</p>
  </article>
</main>
<footer>
  <p>版权信息</p>
</footer>

以上示例展示了HTML嵌套规则的一些应用场景。在实际开发中,需要根据不同的需求选择合适的嵌套规则,以确保页面结构的合理性和兼容性。

三、案例实战:设计CSS禅意花园

1、认识CSS禅意花园

CSS Zen Garden(CSS禅意花园)是一个展示CSS样式设计能力的网站。该网站由Dave Shea于2003年创立,旨在展示如何使用CSS来创建一个美观的网页布局,而无需使用表格(table)和框架(frame)等传统方法。

CSS禅意花园提供了一个基本的HTML模板,其中包括一个标题、一段内容以及一个页脚。设计师们使用这个模板,仅通过修改CSS样式表来重新设计整个页面。这使得设计师能够专注于CSS本身,而不用担心HTML结构。

截至2023年,CSS禅意花园已经收集了超过360个设计作品,这些作品都是由世界各地的设计师使用CSS创建的。这些设计作品展示了CSS在布局、颜色、字体等方面的强大功能和创造力。

CSS禅意花园对于Web设计师来说,是一个学习和交流的宝库。通过研究这些设计作品,设计师可以学到许多关于CSS样式和布局的技巧。同时,CSS禅意花园也激发了许多设计师对于Web设计的热情,并推动了Web标准和CSS技术的发展。

2、定义网页结构

网页结构是指网页的布局和组织方式。一个好的网页结构应该清晰、一致,便于用户浏览和理解,同时也有利于搜索引擎优化(SEO)。在网页设计中,通常将网页结构划分为以下几个部分:

  1. 头部(Header):通常包含网站的标题、LOGO、导航栏以及一些其他元素,如搜索框、登录/注册按钮等。

  2. 主体(Main/Content):这是网页的主要内容区域,通常包括文章、图片、视频、下载链接等。在这个区域中,信息按照一定的层次和逻辑进行组织,便于用户阅读和理解。

  3. 侧边栏(Sidebar):位于主体内容区域的左侧或右侧,通常包含辅助信息,如相关文章、标签云、广告等。

  4. 页脚(Footer):位于网页页面的底部,通常包含版权信息、联系方式、友情链接、隐私政策等。

在设计网页结构时,应注意以下几点:

  1. 保持一致性:在整个网站中使用相同的布局和导航结构,使用户容易找到所需信息。

  2. 简洁明了:避免使用过多的元素和装饰,以免分散用户注意力。

  3. 易于导航:确保用户能够快速找到他们需要的信息,通过使用清晰的导航和内部链接来实现。

  4. 响应式设计:网站应该能够自适应各种不同的屏幕尺寸,包括移动设备。

  5. SEO优化:使用合适的HTML标签和优化技巧,提高搜索引擎排名。

  6. 无障碍访问:确保网页结构能够被残障用户所访问,如使用alt属性为图片提供描述文本。

通过以上这些原则,可以设计出清晰、易于使用的网页结构,从而提高用户体验并增加网站流量。

3、设计嵌套结构

禅意花园犹如一篇散文,整个页面包含3部分。

  • 站点介绍。
  • 支持文本。
  • 链接列表。
    1.站点介绍
    站点介绍部分犹如抒情散文,召唤你赶紧加入到CSS标准设计中来,该部分包含3段。
  • 网页标题信息,包括主副标题。
  • 内容简介,呼唤网友赶紧加入进来。
  • 启蒙之路,回忆和总结当前标准之路的艰巨性和紧迫性。
    2. 支持文本
    支持文本部分犹如叙事散文,娓娓道来,详细介绍活动的内容,用户参与的条件、支持、好处等。
  • 这是什么?
  • 邀您参与。
  • 参与好处。
  • 参与要求。
    另外末尾还包含了相关验证信息。
    3. 链接信息
    第三部分很简洁地列出了所有超链接信息。该部分也包含3小块链接信息。

4、构建基本框架

构建CSS禅意花园的基本框架包含以下几个关键步骤:

  1. 创建HTML结构

首先,创建一个简单的HTML结构,包括<html><head><body>以及一些基本的<div>元素,如header、main、sidebar和footer。在<head>部分,引入CSS样式表。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS禅意花园</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>
    <div class="container">
        <!-- 页面结构 -->
    </div>
</body>
</html>
  1. 编写CSS样式

在CSS样式表中,定义基本的页面样式。包括body、容器、header、nav、main、aside和footer等元素的样式。您可以从简单的样式开始,然后逐步添加更多的样式和效果。

body {
    font-family: Arial, sans-serif;
    background-color: #fff;
    margin: 0;
    padding: 0;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px;
}

.header {
    background-color: #333;
    color: #fff;
    padding: 20px;
}

.navigation {
    margin: 0;
    padding: 0;
    list-style: none;
}

.navigation li {
    display: inline-block;
    margin-right: 10px;
}

.navigation a {
    color: #fff;
    text-decoration: none;
    padding: 5px;
}

.main {
    background-color: #f5f5f5;
    padding: 30px;
}

.aside {
    background-color: #fff;
    padding: 30px;
}

.footer {
    background-color: #333;
    color: #fff;
    padding: 20px;
    text-align: center;
}
  1. 添加内容

在HTML结构的相应位置添加内容,例如header中的网站标题和导航,main中的文章和侧边栏内容,footer中的版权信息等。

  1. 优化样式和结构

根据设计需求,进一步优化HTML结构和CSS样式。您可以添加媒体查询实现响应式设计,使用CSS动画和过渡效果增强用户体验,以及优化性能和可访问性等。

通过以上步骤,您可以构建一个基本的CSS禅意花园框架。在实际应用中,还需要根据设计需求进行更多的调整和优化。

5、设计局部结构

在CSS禅意花园中,设计局部结构主要包括以下几个部分:

  1. 页面头部(Header)

页面头部通常包括网站标题、LOGO、导航栏以及其他一些元素,如搜索框、登录/注册按钮等。以下是一个简单的页面头部结构示例:

<header class="header">
    <h1>CSS禅意花园</h1>
    <nav class="navigation">
        <ul>
            <li><a href="#">主页</a></li>
            <li><a href="#">关于我们</a></li>
            <li><a href="#">投稿指南</a></li>
            <li><a href="#">联系我们</a></li>
        </ul>
    </nav>
</header>
  1. 内容区域(Main)

内容区域通常包括文章、图片、视频、下载链接等。在这个区域中,信息按照一定的层次和逻辑进行组织,便于用户阅读和理解。以下是一个简单的内容区域结构示例:

<main class="main">
    <article class="article">
        <h2>最新设计作品</h2>
        <div class="design-作品">
            <!-- 设计作品内容 -->
        </div>
    </article>
    <aside class="sidebar">
        <h2>热门标签</h2>
        <ul class="tags">
            <li><a href="#">CSS</a></li>
            <li><a href="#">网页设计</a></li>
            <li><a href="#">响应式设计</a></li>
            <li><a href="#">禅意花园</a></li>
        </ul>
    </aside>
</main>
  1. 页面底部(Footer)

页面底部通常包含版权信息、联系方式、友情链接、隐私政策等。以下是一个简单的页面底部结构示例:

<footer class="footer">
    <p>Copyright &copy; 2023 CSS禅意花园. All rights reserved.</p>
</footer>

在实际应用中,您可以根据需求进一步细分或合并这些部分。同时,还需要根据设计需求添加更多的HTML标记和CSS样式。

6、正文版式设计

在CSS禅意花园中,正文版式设计是至关重要的。一个良好的正文版式可以使内容更易于阅读和理解,同时也能提高页面的美观性。以下是一些建议:

  1. 使用统一的字体样式:选择一种易读性较高的字体,如Arial、Helvetica、Georgia等。保持一致的字体样式、大小和颜色。

  2. 设定合适的行高:行高是每行文字之间的垂直间距。一个合适的行高可以使文字更容易阅读。通常,行高可以选择为字体大小的1.5-2倍。

  3. 设定文本对齐方式:选择合适的文本对齐方式,如左对齐、居中对齐或右对齐。通常情况下,左对齐是最常见的选择,因为它符合人们的阅读习惯。

  4. 段落间距:段落间距是段落之间的垂直间距。一个合适的段落间距可以提高文章的层次感和阅读体验。通常,段落间距可以选择为行高的1.5-2倍。

  5. 标题和子标题:使用标题和子标题来强调文章的结构,帮助读者更快地找到他们感兴趣的内容。可以使用不同的字体样式、大小或颜色来突出标题和子标题。

  6. 列表:当需要列出一系列项目时,使用有序列表或者无序列表。这可以使内容更加清晰且有条理。

  7. 强调文本:使用粗体、斜体或者下划线来强调关键词和重要语句。但要注意不要过度使用,否则会削弱强调的效果。

  8. 留白:留白是指页面上未被文字、图片等元素填充的空间。适当的留白可以让页面显得更加简洁、舒适,有利于阅读。

  9. 图文搭配:适当地使用图片、图表或其他视觉元素来辅助文字内容,可以提高读者的兴趣和理解能力。但需要确保图片和文本之间的平衡,不要过于分散读者的注意力。

在实际应用中,您可以根据设计需求进行调整和优化。注意保持页面布局的一致性,以便于读者阅读和理解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不被定义的~wolf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值