前言

这一章节讲了以下内容:

  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. Android之udp传输

    注意除了添加Internet权限外,还要添加两行代码 StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDi ...

  2. oracle_sqlplus命令行乱码问题解决

    在linux以及unix中,sqlplus的上下左右.回退无法使用,会出现乱码情况. 而rlwrap这个软件就是用来解决这个的. 首先下载rlwrap包:https://linux.linuxidc. ...

  3. 20145325张梓靖 《网络对抗技术》 PC平台逆向破解

    20145325张梓靖 <网络对抗技术> PC平台逆向破解 学习任务 shellcode注入:shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并 ...

  4. canvas-简单快速实现知乎登录页背景效果

    前言 打开知乎的登录页,就可以看到其背景有一个动效,看起来好像蛮不错的样子: 这个效果使用canvas是不难实现的,接下来就一步一步地讲解并实现这个效果. 分析 在动工之前先分析这个效果到底是如何运动 ...

  5. 列表与if语句的结合

    # 1.判断一个数是否是水仙花数, 水仙花数是一个三位数, 三位数的每一位的三次方的和还等于这个数. \ # 那这个数就是一个水仙花数, 例如: 153 = 1**3 + 5**3 + 3**3 # ...

  6. ODAC(V9.5.15) 学习笔记(二)控件列表

    ODAC的控件有26个,简单介绍如下: TOraSession  管理Oracle的连接  TOraQuery  使用SQL进行数据获取,自动将更新提交数据库  TSmartQuery    在处理字 ...

  7. linux下关于mysql的命令的用法

    所有关于mysql的命令都在/usr/bin/中, 使用 /usr/bin | grep 'mysql'可以列出这些mysql命令 导出数据库, 可以直接在 命令行中, 使用 mysqldump -u ...

  8. 為什麼gnome-terminal中不能使用ctrl_shift_f來進行查找? 是因為 跟输入法的全局设置衝突了!

    但是,也要注意, 为什么ctrl+shift_f有时候可以使用, 有时候又不可以使用? 是因为, 这个跟输入法的状态有关, 如果输入法是英文, 那么中文的 "简体/繁体切换快捷键ctrl+s ...

  9. 【做题】NOWCODER142A Ternary String——数列&欧拉定理

    题意:你有一个长度为\(n\),且仅由012构成的字符串.每经过一秒,这个字符串所有1后面会插入一个0,所有2后面会插入一个1,然后会删除第一个元素.求这个字符串需要多少秒变为空串,对\(10^9+7 ...

  10. dajie项目的坑

    1.首先IDEA巨坑无比的地方是引入时,只要哪怕一个依赖下载不到,就会长期阻塞,删除.重新引入都没用!! 2.注释掉项目及其子项目中所有pom.xml中引用的spring仓库,否则即使maven配置阿 ...