前言

这一章节讲了以下内容:

  1. 两个新的 HTML elelments:它们是 <div>和 <span>,使用这两个 element 可以使得 HTML 有更加 serious 的 supporting structure.
  2. 一些 shortcuts,用于简化对 font, border 和 margin 等的 properties 的参数的 specifying 更加 eaiser.
  3. 关于 pseudou-class 的介绍

关于<div>

<div>什么时候发挥作用呢,是为了存在 logical sectons 的时候,并且要为这个 section 设置一些参数的时候使用。它也可以用于分清页面的内容结构,使得页面更加容易理解其大致的框架。
步骤如下:

  1. Identifying logical sections
  2. Using <div>s to mark sections: 这里需要注意的是,<div>包括起来的是一个 block element ,所以有 opening tag, 也有 closing tag:</div>
  3. Lableling the <div>s :通过在<div>中添加 id=“” 或者 class=“”,以便以后在 CSS 中设计其 style。
  4. Adding some style

设置<div>段落为菜单的样式:

在这本书中,为了能够将段落有 order 的样子,于是对其 CSS 添加了一些style,这些 style 具体如下:

  1. 设置 width:200px;这个 property 有一个特点,那就是它只 specify the width for the content area only. 而不是整个box。
  2. 设置 text-align:center;这里的 text-align 会对齐所有在<div>中的 inline element, 不仅仅包括 text,也会包括 img.
  3. descendent selector:在这里,我们只想要改变<div>的所有<h1>的颜色,但是我们不想改变文章其他部分<h1>的属性,同时,如果设置id,class就太繁琐,这个时候可以使用 descendents,在 CSS 中这样写: div h1{ color:black;} 这里 div是parent name,h1 是child name,中间用空格隔开。
  4. line-height 参数的设置:可以通过 1em,%的方式设置,但是这样设置的话,是基于
    中的文本文字的,这时候,标题的字比较大,padding 就会不足,可以用数字“1”代替,它的意思是 to change the line-height of each element in it.

一些shortcuts

padding 和 margin的简化

原来是这样的:

padding-top:0px;
padding-right:20px;
padding-bottom:10px;
padding-left:0px;

或者这样:

`margin-top:0px;
margin-right:20px;
margin-bottom:10px;
margin-left:0px;

现在只需要这样:
margin:top right bottom left;
如果两个对边相等,
可以这样:
margin:top,right;
如果四个相等,
可以
margin:20px;

关于 border,background 的 property 的设置:

boder 有很多参数,比如:

  • border-width
  • border-style
  • border-color
    现在只需要这样:
    border: solid thin #007e7e;
    而且你可以 specify them in any order you like

background 有很多参数,比如:

  • background-color:
  • background-image;
  • background-repeat:

现在可以这样写:
background white url(images/cocktail.gif) repeat-x;

对于 font 的设置

font 的 property 的设置有顺序:
font:

  1. font-style
  2. font-variant
  3. font-weight 这三个都是 optional 的
  4. font-size/line height 这个必须有,line-height 是optional 的,但是要注意格式
  5. font-family 用逗号隔开每个字体的名称

关于<span>

<span>用于inline element,把它们弄成一个 package ,<div>是用于 block element 的。

关于<a> element 的 psedo-class

<a>element 有五个psedo-class:

  • a:link
  • a:visited
  • a:hover
  • a:focus
  • a:active

可以在 CSS 中对其设置相应的参数,比如当 hover 时,字体变成黄色:
a:hover
{ color:yellow;
}
这里的psedo-class 有两个特性:

  1. state related:Browser 通过用户的状态来将 element 动态地将其纳入不同的 class
  2. do not need to type in HTML:这是一个 class,但是不需要自己去定义。

关于cascade

当 Browser 打开一个网页的时候,可以存在多个 CSS 文件:包括 author 的,visitor 的 和 browser default 的。这时,因为对一个段落可能被很多 CSS 文件当作 selector,所以需要经过一系列的 sorting ,找到 more specific 的那一个,来用于显示,主要的步骤如下:

  1. Sort for author, reader and browser
  2. Sort for specify
  3. When elements have same specify, sort again based on ordering in styelsheets.

如何确定 specify?

通过三位数确定:000 :

  1. 个位:是否包含 selector ,包含一个 +one point
  2. 十位:是否包含 class 或者 psedo class,包含一个+one point
  3. 百位:是否包含 id, 包含一个+one point

HTML第十章总结的更多相关文章

  1. 读《编写可维护的JavaScript》第九、十章总结

    第九章 将配置数据从代码中分离出来 9.2 抽离配置数据 这章比较好理解,也非常常见,作者给的俩个例子就能说明一切: // 将配置数据藏在代码中 function validate(value) { ...

  2. 0526 Sprint1个人总结 & 《构建之法》第八、九、十章

    Sprint1的个人总结: 我是老人组的成员,我们是做一款四则运算训练的软件.然后我是接了界面设计的任务,所以我任务将会是sprint1中相对重一点的一方.我的感觉是,界面要做得充满童趣,毕竟我们的软 ...

  3. Getting Started With Hazelcast 读书笔记(第八章-第十章)

    第八章到第十章就是一些介绍性的描述,吹的就是Hazelcast能使用在各种地方..   第八章 -从外面看 1.Hazelcast做了一个memcache的java实现,方便py和php使用. 2.可 ...

  4. 第十章 MySQL 常用函数

    第十章 MySQL 常用函数 第一节:日期和时间函数 1,CURDATE() 返回当前日期:2,CURTIME() 返回当前时间:3,MONTH(d) 返回日期 d 中的月份值,范围是 1~12 第二 ...

  5. sql 入门经典(第五版) Ryan Stephens 学习笔记 (第六,七,八,九,十章,十一章,十二章)

    第六章: 管理数据库事务 事务 是 由第五章 数据操作语言完成的  DML ,是对数据库锁做的一个操作或者修改. 所有事务都有开始和结束 事务可以被保存和撤销 如果事务在中途失败,事务中的任何部分都不 ...

  6. Java Concurrency in Practice 读书笔记 第十章

    粗略看完<Java Concurrency in Practice>这部书,确实是多线程/并发编程的一本好书.里面对各种并发的技术解释得比较透彻,虽然是面向Java的,但很多概念在其他语言 ...

  7. 第十章 系统级I/O

    第十章 系统级I/O 一.Unix I/O 1.一个unix文件就是一个m个字节的序列 2.unix外壳创建的每个进程开始时都有三个打开的文件:标准输入(0) .标准输出(1)和标准错误(-1). 二 ...

  8. 第十章实践——系统级I/O代码运行

    第十章实践——系统级I/O代码运行 实验代码清单如下: 1. cp1——复制一个文件到另一个文件中(两个已经存在的文件) 复制前: 执行后结果 2. setecho.echostate——改变.显示输 ...

  9. 20135306黄韧 附录A及第十章学习总结

    附录A  错误处理 A.1 Unix系统中的错误处理 1.Unix风格的错误处理 if ((pid = wait(NULL)) < 0) { fprintf(stderr,”wait error ...

  10. 第十章:鸟哥的Linux私房菜

    第十章.vim程式编辑器 1. vi与vim 1.1 为何要学vim2. vi的使用 2.1 简易执行范例 2.2 按键说明 2.3 一个案例的练习 2.4 vim的暂存档.救援回复与开启时的警告讯息 ...

随机推荐

  1. <线程池-定时任务> ScheduledExecutorService之shutdown引发的RejectedExecutionException问题

    一. 问题描述 先来看一下异常信息,启动tomcat时就报错: 2015-3-20 15:22:39 org.apache.catalina.core.StandardContext listener ...

  2. Ubuntu 安装 VS code

    sudo snap install --classic vscode 没有snap就先装snap,是的,就是这么简单.

  3. topcoder srm 480 div1

    problem1 link 直接模拟即可. problem2 link 首先,网关一定是安装在client与server之间的链路上.而不会安装在client与client之间的链路上.对于一条路径c ...

  4. topcoder srm 390 div1

    problem1 link 记录一个模$k$之后的值是否出现过,出现过则出现循环,无解:否则最多$k$ 次一定能出现0. import java.util.*; import java.math.*; ...

  5. 如何使用jqueryUi的datepicker日历控件?

    参考: http://www.jb51.net/article/85007.htm 这里的日历控件是, 基于jquery的jqureyui中的一个 widget. 需要js 文件: 外部的js文件, ...

  6. C# 里调用vb的inputbox弹出窗

    https://blog.csdn.net/hutao1101175783/article/details/16800871 先对项目添加对Microsoft.VisualBasic的引用 Inter ...

  7. js转义和反转义html

    本文地址: http://www.cnblogs.com/daysme/p/7100553.html 下面的代码网上常用有,但不是想要的. JS实现HTML标签转义及反转义 http://blog.c ...

  8. MS-Windows中的Git命令行

    Git command line for MS-Windows Inhalt 1 Download and install, or copy the git command line suite fo ...

  9. 为什么返回的数据前面有callback?

    这是一个同学出现的问题,问到了我. 应该是这样的: 但问题是这样的: 我看了所请求的格式和后台要求的也是相同的.而且我也是这种做法,为什么他的就不行呢? 打了几遍 JSON.parse 也都是不行…… ...

  10. 4、keepalived高可用nginx负载均衡

    keepalived: HTTP_GET        //使用keepalived获取后端real server健康状态检测 SSL_GET(https)  //这里以为这后端使用的是http协议 ...