1.float属性能把网页元素移到网页(或者其他外围快)的某一侧。出现在浮动元素之后的所有HTML都能在网页中上移,环绕在浮动元素的周围。

float属性接受以下3种不同的值:left(左)、right(右)和none(无)。假设要把一张图片移到网页的右侧,可以创建下面这个类样式,并把它应用到<img>标签上:

.floatRight  {  float:  right;  }

将该属性应用到一个装满内容的<div>标签上时,还可以创建一个侧边栏:

.sidebar  {

float:  left;

width:  170px;

(1)把每一列都包在一个带有ID或class属性的<div>标签里面。

(2)把侧边栏<div>浮到右侧或左侧。

(3)给浮动的侧边栏设定一个宽度。

(4)给正文添加一个left margin。

2.多种方法解决叛逆浮动元素。

(1)在外围div的底部添加一个清除元素。

(2)浮动外围元素。

(3)利用overflow:hidden。

(4)使用Micro Clear Fix。

3.CSS的box-sizing属性可以让Web浏览器用一种不同的模式来计算元素的实际屏幕宽度。它接受以下3个值之一:

(1)content-box值是浏览器正常的计算方式,即屏幕上元素的宽度为left/right border厚度、left/right padding以及CSS width属性值得总和。

box-sizing:content-box;

(2)padding-box值是让浏览器要包含left/right padding。换句话说,元素的显示宽度为CSS width以及left/right padding的总和。它不包括元素周围的任何border

box-sizing:padding-box;

(3)最后一个border-box属性,包含padding、border以及CSS的width。一般来说,这回是你想要使用的那一个。它使这个算术变得很简单,有助于防止float drop,当你使用基于百分比的宽度,并且给border宽度和padding使用基于pixel单位的时候,尤其如此:

box-sizing:border-box;

4.搭建HTML结构

(1)在文本编辑器中打开start.html文件,并单击HTML注释(<!--first sidebar goes here-->)后面的空行。

(2)给侧边栏添加一个开始的<aside>:  <aside class="sidebar1">.

(3)打开未见sidebar1.txt,复制所有的内容,然后回到start.html文件

(4)立即在你刚刚粘贴上的代码后面输入</aside>。

(5)把光标放在这个HTML注释(<!--main content goes here-->)后面的空行上,然后输入<article>标签后面。

(6)打开文件main.txt,复制所有的内容,返回start.html文件,然后把代码粘贴到刚创建的<article>标签后面。

5.创建布局样式

(1)在文本编辑器中,打开styles.css文件。

(2)将光标滚动到CSS文件的底部,你会看到一条CSS注释,写道:/*add tutirial styles below here */。在它下方添加以下样式:

.sidebarl  {

float: left;

width: 20%;

}

(3)保存HTML和CSS文件,并在Web浏览器中预览start.html文件。

(4)给第2个列创建一个样式:

.main  {

margin-left: 22%;

}

再添加一列

(1)打开文件sidebar2.txt。从文件中复制所有的HTML,然后返回start.html文件。

(2)在文件底部附近找到HTML的注释<!--  second sidebar goes here -->

(3)输入<aside class="sidebar2">,按回车键,然后粘贴在第1步中复制的HTML代码。

(4)在文本编辑器中打开styles.css文件。

(5)保存所有文件,并在Web浏览器中预览start。html文件。

(6)编辑.main样式,使它看起来像这样:

.main  {

float: left;

width: 60%;

}

(7)在.sidebar2样式的后面再添加一个样式:

footer  {

clear:both;

}

6.添加一些空间

(1)在.sidebar1、 .main和.sidebar2样式中添加padding,使样式像这样:

.sidebar1  {

float:  left;

width:  20%;

padding:  0  20px  0  10px;

}

.main  {

float:  left;

width:  60%;

padding:  0  20px  0  20px;

}

.sidebar2  {

float:  right;

width:  20%;

padding:  0  10px  0  20px;

}

(2)在样式表中再添加一个样式:

*  {

-moz-box-sizing:  border-box;

box-sizing:  border-box;

}

(3)在.main样式中添加一个left/right border,像这样:

.main  {

float:  left;

width:  60%;

padding:  0  20px;

border-left:  dashed  1px  rgb(153,153,153);

border-right: dashed  1px  rgb(153,153,153);

}

7.将流式布局和固定宽度设计混合

(1)在styles.css文件中,删除刚才创建的.pageWrapper样式。

(2)在styles.css文件中,再添加一个样式:

nav ul, header  h1, footer  p  {

max-width: 1200px;

margin:0  auto;

}

(3)在文本编辑器中打开start.html文件。

(4)向下滚动到HTML文件的底部。

(5)在群组选择器中添加新的类,像这样:

nav ul,  header  h1,  footer  p,  .contentWrapper  {

max-width:  1200px;

margin:  0  auto;

}

CSS3秘笈:第十三章的更多相关文章

  1. CSS3秘笈:第九章

    1.链接状态:大部分浏览器支持4中基本的链接状态:未访问的链接.已访问的链接.访问者的鼠标正悬停在上方的链接.正被单击的链接.这些状态的4个对应伪类选择器分别是:link.:visited.:hove ...

  2. CSS3秘笈:第一章

    1.<div>和<span>标签: <div>和<span>标签:就像是一个空的容器,我们要往里面填充内容.一个div就是一个块,意味着它的前后都要空一 ...

  3. CSS3秘笈:第二章

    1.一个样式由两个元素组成:浏览器对其设置格式的网页元素(选择器,selector)和实际的格式化指令(声明块,declaration block). 2.简单的样式也包含了以下几个元素: (1)Se ...

  4. CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章

    第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...

  5. CSS3秘笈:第十二章&第十三章

    第十二章 1.网页布局类型 (1)固定宽度 (2)流式 (3)响应式Web设计 2.CSS布局的方法 通过给元素设置一个宽度,将它浮到左侧或右侧,就可以创建一个列(元素后面的文本会环绕浮动的元素,仿佛 ...

  6. CSS3秘笈第三版涵盖HTML5学习笔记13~17章

    第13章,构建基于浮动的布局 使用的是float(浮动)属性 注:float:none值将取消所有浮动,通常只用来取消元素中已经应用的浮动. 切记:不需要给正文的div设计宽度,即使设计成固定宽度也不 ...

  7. CSS3秘笈第三版涵盖HTML5学习笔记9~12章

    第9章,装饰网站导航 限制访问,处于隐私方面考虑,浏览器已经开始限制可以对伪类:visited应用哪些CSS属性了.其中包括对已访问过的链接定义color.background-color.borde ...

  8. CSS3秘笈第三版涵盖HTML5学习笔记6~8章

    第二部分----CSS实用技术 第6章,文本格式化 指定备用字体: font-family:Arial,Helvetica,sans-serif; 当访问者没有安装第一种字体时,浏览器会在列表中继续往 ...

  9. CSS3秘笈第三版涵盖HTML5学习笔记1~5章

    第一部分----CSS基础知识 第1章,CSS需要的HTML HTML越简单,对搜索引擎越友好 div是块级元素,span是行内元素 <section>标签包含一组相关的内容,就像一本书中 ...

随机推荐

  1. iOS 打包上传AppStore相关(3)-iTunes相应配置以及使用蒲公英网站进行应用托管分发(链接/二维码)

    上一篇讲到我们最终生成了一个格式为 .xcarchive 的文件(可以右键并Show in Finder)查看.本篇我们就进行最后的设置,打包上传.另外,还有一个小福利,那就是打测试包分发链接测试. ...

  2. doT.js实例详解

    doT.js详细介绍 doT.js特点是快,小,无依赖其他插件.官网:http://olado.github.iodoT.js详细使用介绍 使用方法:{{= }} for interpolation{ ...

  3. LWP::UserAgent介绍2

    #这个LWP::UserAgent一般要配合其他模块使用 #比如: #HTTP::Request #HTTP::Cookie #HTTP::Respose #HTTP::Status #LWP::Us ...

  4. Managed Switch: Confs

    shortcuts: c-w: delete word before c-a: move to first char c-y: delete everything after cursor c-z: ...

  5. react起步

    react是一个用于构建用户界面JAVASCRIPT库. react主要用于构建UI,是MVC中的V(视图). react特点 1.声明式设计 2.高效 3.灵活 4.JSX 5.组件 6.单项响应的 ...

  6. Android 发送HTTP GET POST 请求以及通过 MultipartEntityBuilder 上传文件(二)

    Android 发送HTTP GET POST 请求以及通过 MultipartEntityBuilder 上传文件第二版 上次粗略的写了相同功能的代码,这次整理修复了之前的一些BUG,结构也大量修改 ...

  7. linux mysql-server和mysql-client

    我认为server和client是DBMS的两个面向不同操作对象的工具.server是DBMS面向物理层次,包含存储数据的一系列机制.处理方法的集成:client是DBMS面向用户,提供一系列工具为用 ...

  8. 网页SEO内容

    关于网页根目录下的robots.txt文件的部分疑问 robots.txt书写语法:第一条:User-agent,后接搜索引擎的蜘蛛名称第二条:Disallow,填写要拦截的部分经典语法:User-a ...

  9. 5、判断、循环、数组综合练习案例(迷你DVD)

    迷你dvd代码如下: package com.manager; import java.util.Scanner; public class DVDManage { public static voi ...

  10. Qt5 Cmake

    project(my) cmake_minimum_required(VERSION ) set (CMAKE_PREFIX_PATH "C:\\Qt\\Qt5.3.0\\5.3\\msvc ...