前端学习笔记--HTML/CSS--网页布局

[转]来自于慕课网学习整理。

网页布局

一、一列布局:

完成代码编辑器中的任务1,要求main和footer在浏览器中水平居中。如下图所示:

Css代码:


body{ margin:0; padding:0; font-size:5px}
div{ text-align:center; font-weight:bold}
.main,.footer{ width:200px; margin:0 auto;}
.head{ width:100%; height:20px; background:#ccc}
.main{ height:100px; background:#FCC}
.footer{ height:20px; background:#9CF}

ps:用到固定宽度居中方法


Html代码:

<body>
<div class="head">head</div>
<div class="main">main</div>
<div class="footer">footer</div>
</body>

二、二列布局:

完成本次实战练习,快来检验你的实战成果吧!任务最终效果如下:

Css代码:

body{ margin:0; padding:0; font-size:30px; font-weight:bold}
div{ text-align:center; line-height:50px}
.main{ width:960px; height:600px; margin:0 auto}
.left{ width:300px; height:600px; background:#ccc; float:left}/*左浮动样式*/
.right{ width:660px; height:600px; background:#FCC; float:right}/*右浮动样式*/
 

HTML代码:

<body>
<div class="main">
    <div class="left">left</div>
    <div class="right">right</div>
</div>
</body>

 

三、三列布局:

完成本次实战练习,快来检验你的实战成果吧!最终效果如下图所示:

CSS代码:

body{ margin:0; padding:0; font-size:10px; font-weight:bold}
div{ line-height:15px}
.left{ width:50px; height:100px; background:#ccc; position:absolute; left:0; top:0}
.main{ height:100px; margin:0,80px,0,50px;background:#9CF}
.right{ height:100px; width:80px; position:absolute; top:0; right:0; background:#FCC;}

HTML代码:

<body>   
    <div class="left">left</div>
    <div class="main">设计首页的第一步是设计版面布局。就象传统的报刊杂志编辑一样,我们将网页看作一张报纸,一本杂志来进行排版布局。。</div>
    <div class="right">right</div>
</body>

四、布局中用到的float属性:

1.float属性:

float:left; float:right; float:none

特点:元素会左移,或右移,直至触碰到容器为止。

          当元素没有设置宽度值,而设置了浮动属性,元素的宽度随内容的变化而变化。

          当元素设置浮动属性之后,会对相邻的元素产生影响,相邻元素特指紧邻后面的元素。

2.清除浮动的常用方法

方法一:clear:both; clear:left; clear:right

方法二:同事设置width:100%(或固定宽度)+overflow:hidden;

ps:

(1)对于父元素的影响,父元素清除浮动就是:width:100%;overflow:hidden;

父块没有设置指定的高宽,当子块设置为浮动后,原本包裹子块的父块的高度塌陷消失,这时给父块设置overflow:hidden就能清楚浮动造成的影响,使父块重新包裹子块。
(2)对于自己临近的元素影响,清除浮动就是:clear:both;

五、布局中用到的position属性

1.相对定位:position:relative

特点:

(1)相对于自身原有位置进行偏移

(2)仍处于标准文档流中

(3)随即拥有便宜属性和z-index属性

2.绝对定位:position:absolute

特点:

(1)建立了以包含块为基准的定位

(2)完全脱离了标准文档流

(3)随即拥有便宜属性和z-index属性

如果未设置偏移量,

特点:无论是否存在已定位祖先元素,都保持在元素初始位置

          脱离了标准本文档流

如果设置偏移量,

偏移参照基准:

       无已定位祖先元素,会以<html>(根元素)为便宜参照基准

       有已定位祖先元素,以距其最近的已定位祖先元素为偏移参照基准

六、横向两列布局:

28213729_8GWq.jpg

固定宽度列的高度>自适应宽度的列的高度(用绝对定位方式),因为绝对定位不会占据位置,若是固定宽度列高度<自适应宽度的列的高度,无法支撑整个父元素。

 

转载于:https://my.oschina.net/u/3176241/blog/814061

详尽的前端笔记,包含htmlcss部分,由xmind8做的笔记css部分:编写的位置 1.内联样式 将样式编写到标签的style属性 <p style="color:red;"></p> 这种样式只会对当前标签起作用,不能对样式进行复用,不方便后期维护,不推荐使用 2.内部样式表 将样式表编写到head的style标签 <style type="text/css"></style> 使用内部样式表,进一步将表现和结构分离,可以同时为多个元素设置样式,方便后期的维护 3.外部样式表 将样式表编写到外部的CSS文件,然后通过link标签将外部文件引入 <link rel="stylesheet" type="text/css" href="文件的路径"/> 将样式编写到外部样式表,可以在不同的页面使用同一个样式表,完全将表现和结构分离,方便后期的维护,推荐使用的方式 编写的位置 1.内联样式 将样式编写到标签的style属性 <p style="color:red;"></p> 这种样式只会对当前标签起作用,不能对样式进行复用,不方便后期维护,不推荐使用 2.内部样式表 将样式表编写到head的style标签 <style type="text/css"></style> 使用内部样式表,进一步将表现和结构分离,可以同时为多个元素设置样式,方便后期的维护 3.外部样式表 将样式表编写到外部的CSS文件,然后通过link标签将外部文件引入 <link rel="stylesheet" type="text/css" href="文件的路径"/> 将样式编写到外部样式表,可以在不同的页面使用同一个样式表,完全将表现和结构分离,方便后期的维护,推荐使用的方式 基本语法 选择器 通过选择器可以选页面的一组元素,然后为其设置样式 元素选择器 根据标签名,选页面的指定元素 语法:标签名{ } 例子: div{} p{} h1{} id选择器 根据元素的id属性值选一个唯一的元素 语法:#id {} 例子: #box1{} #hello{} 类选择器 根据元素的class属性值,选一组元素 语法:.class{} 例子: .hello{} .box{} 通配选择器 选页面的所有元素 语法:*{} 通配选择器的性能比较差,尽量避免使用 并集选择器 可以同时选符合多个选择器的元素 语法:选择器1,选择器2,选择器N{} 例子: div,p,#box,.hello{} 交集选择器 可以选满足多个条件的元素 语法:选择器1选择器2选择器N{} 例子:p.hello{} 后代元素选择器 选指定元素的指定后代元素 语法:祖先元素 后代元素{} 例子: div span {} div p{} 子元素选择器 选指定元素的指定子元素 语法:父元素 > 子元素 {} 例子: div > span {} div > p{} 声明块 声明块实际上就是一个一个CSS声明 声明 每一个CSS声明都是一个样式,实际上就是一个名值对的结构 名和值之间使用:链接 :左边是样式的名字 :右边是样式的值 每一个声明以;结尾 例子 color:red; font-size:20px; 元素之间的关系 父元素 直接包含子元素的的元素叫做父元素 子元素 直接被父元素包含的元素叫做子元素 祖先元素 直接或间接包含后代元素的元素叫做祖先元素,父元素也是祖先元素 后代元素 直接或间接被祖先元素包含的元素叫后代元素,子元素也是后代元素 兄弟元素 拥有相同父元素的元素叫做兄弟元素 块元素和内联元素 块元素 块元素会独占页面的一行,无论他的内容的多少 一般使用块元素对页面进行布局 常见的块元素 div p h1~h6 内联元素 内联元素只占用自身的大小,不会独占一行 内联元素也叫行内元素(inline) 一般内联元素都是用来为文本来设置效果 常见的内联 span a img 包裹规则 一般都是使用块元素去包裹内联元素,而不会使用内联去包裹块元素 a元素可以包含任意元素,除了a本身 p元素不能包含任何块元素 伪类和伪元素 伪类和伪元素用来表示元素所处的一个特殊的状态,或者是一个特殊的位置 :link 表示一个普通的链接(未访问过的链接) :visited 表示访问过的链接 :hover 鼠标移入的链接,也可以为其他元素设置hover :active 正在被点击的链接,也可以为其他元素设置active :focus 表示元素获取焦点的状态,一般用于文本框 ::selection 表示内容被选的状态 在火狐使用::-moz-selection来代替 :first-letter 表示第一个字符 :first-line 表示文字的第一行 :before 选元素的最前边 一般该伪类都会结合content一起使用,通过content可以向指定位置添加内容 :after 选元素的最后边 一般该伪类都会结合content一起使用,通过content可以向指定位置添加内容 属性选择器 根据元素的属性选择指定元素 [属性名] 选取含有指定属性的元素 [属性名="属性值"] 选取属性值等于指定值的元素 [属性名^="属性值"] 选取属性值以指定内容开头的元素 [属性名$="属性值"] 选取属性值以指定内容结尾的元素 [属性名*="属性值"] 选取属性值包含指定内容的元素 兄弟元素选择器 选取后一个兄弟元素 前一个 + 后一个 选取后边所有的兄弟元素 前一个 ~ 后边所有 子元素的伪类 :first-child 寻找父元素的第一个子元素,在所有的子元素排序 :last-child 寻找父元素的最后一个子元素,在所有的子元素排序 :nth-child 寻找父元素的指定位置子元素,在所有的子元素排序 例子 p:nth-child(3) 可以使用even,来找到偶数的子元素 可以使用odd,来找到奇数的子元素 :first-of-type 寻找指定类型的第一个子元素 :last-of-type 寻找指定类型的最后一个子元素 :nth-of-type 寻找指定类型的指定子元素 否定伪类 从一组元素将符合要求的元素剔除出去 语法: :not(选择器) 例子: .abc:not(div) HTML,超文本标记语言 负责页面的结构,定义出页面的各个组成部分 HTML是采用纯文本的形式的编写,采用HTML标签来标识出页面的不同部分 标签 成对出现 <标签名></标签名> 自结束标签 <标签名 /> 属性 通过属性可以设置标签的效果 属性需要定义在开始标签或这自结束标签 属性实际上是一组一组名值对结构 例子: <标签名 属性名="属性值" 属性名="属性值"></标签名> <标签名 属性名="属性值" 属性名="属性值" /> HTML页面的基本结构 常用标签 <html> 网页的根标签 一个页面有且只有一个根标签 网页的所有内容都需要写在html标签的内部 <head> 网页的头部 该标签的内容不会在网页直接显示 该标签用于帮助浏览器解析页面 子标签 <title> 用来设置网页的标题 默认会在浏览器的标题栏显示 搜索引擎检索网页时,会主要检索title的内容,它会影响到页面在搜索引擎的排名 <meta> 用来设置网页的元数据,比如网页使用的字符集 <meta charset="utf-8" /> 设置网页的关键字 <meta name="keywords" content="关键字,关键字,关键字,关键字"/> 设置网页的描述 <meta name="description" content="网页的描述"/> 请求的重定向 <meta http-equiv="refresh" content="秒数;url=地址" /> <body> 网页的主体 网页所有的可见部分都需要在body编写 <h1> ~ <h6> 标题标签 在html一共有六级标题 六级标题,h1最重要,h6最不重要,一般页面只会使用h1~h3 h1的重要性仅次于title,浏览器也会主要检索h1的内容,以判断页面的主要内容 一般一个页面只能写一个h1 <p> 段落标签 <br /> 换行标签 <hr /> 水平线标签 内联框架 可以向一个页面引入其他的外部页面 <iframe></iframe> 属性 src 外部页面的地址,可以使用相对路径 width和height 可以设置框架的宽度和高度 name 可以为内联框架指定一个名字 可以将该属性值设置为超链接的target属性的值 这样当点击超链接时,页面将会在相应的内联框架打开 内联框架的内容不会被搜索引擎所检索,所以开发尽量不要使用内联框架 超链接 可以使当前页面跳转到其他的页面 <a>链接的文字</a> 属性 href 指向链接跳转的目标地址,可以是一个相对路径 还可以是#id属性值,这样当点击超链接以后,将会跳转到当前页面的指定位置 可以使用mailto:来创建一个发送电子邮件的超链接 target 指定在哪个窗口打开链接 可选值 _self 默认值,默认在当前窗口打开链接 _blank 在新窗口打开链接 内联框架的name属性值 在指定的内联框架打开链接 注释 语法 <!-- 注释内容 --> 注释的内容不会在页面显示,但是会在源码显示,我们可以通过注释来说明网页的代码 也可以通过注释隐藏一些页面不想显示的内容 实体 在HTML页面一些特殊符号是不能直接使用,需要使用实体来代替这些特殊符号 实体也可以称为转义字符 实体的语法 &实体名; 常用的实体 空格   < < > > 版权符号 © 图片标签 <img /> 使用图片标签可以向页面引入一个外部图片 属性 src 指向一个外部图片的路径,可以使用相对路径 alt 指定一个在图片无法加载时对图片的描述 搜索引擎主要通过该属性来识别图片的内容 如果不写该属性则搜索引擎会对图片进行收录 width 设置图片的宽度 height 设置图片的高度 图片的格式 JPEG 颜色丰富的图片,如,照片 GIF 颜色单一,简单透明的图片,动态图 PNG 颜色丰富,复杂透明的图片 图片选择的原则 效果一致,用小的 效果不一致,用效果好的 相对路径 相对于当前资源所在的目录的路径 可以使用../返回一级目录,返回几级使用几个../ xHtml语法规范 1.HTML不区分大小写,但是尽量使用小写 2.HTML的注释不能嵌套 3.标签必须结构完整 要么成对出现 要么自结束标签 4.标签可以嵌套但是不能交叉嵌套 5.属性必须有值,且值必须加引号,单引号双引号都可以 文本标签 <em> 表示语气上的强调 <strong> 表示内容的重要性 <i> 表示单纯的斜体 <b> 表示单纯的加粗 <small> 表示细则一类的内容 <cite> 表示参考的内容,凡是加书名号的都可以使用cite <q> 短引用,行内引用 <blockquote> 长引用,块级引用 <sup> 上标 <sub> 下标 <del> 删除的内容 <ins> 插入的内容 <pre> 预格式标签,可以保留代码空格换行这些格式 <code> 表示程序代码 列表 无序列表 使用ul来创建一个无序列表,在列表使用li来表示一个列表项 无序列表使用符号作为项目符号 有序列表 使用ol来创建一个无序列表,在列表使用li来表示一个列表项 使用有序的序号作为项目符号 定义列表 列表相关的元素都是块元素,他们之间可以互相嵌套 去除项目符号 list-style:none
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值