CSS学习笔记总结(下)

一、浮动

1. 浮动特性:

  • 浮动元素有左浮动(float:left)和右浮动(float:right)俩种
  • 浮动的元素会向左或向右浮动,碰到父元素边界、其他元素才停下来
  • 相邻浮动的块元素可以并在一行,超出父级宽度就换行
  • 浮动让行内元素或块元素自动转化为行内块元素(此时不会有行内元素间隙问题)
  • 浮动元素后面没有浮动的元素会占据浮动元素的位置,没有浮动的元素内的文字会避开浮动的元素,形成文字饶图的效果
  • 父元素如果没有设置尺寸(一般是高度不设置),父元素内整体浮动的元素无法撑开父元素,父元素需要清楚浮动
  • 浮动元素之间没有垂直margin的合并

2. 清除浮动

  • 父级上增加属性overflow:hidden
  • 在最后一个子元素的后面加一个空的div,给它样式属性clear:both(不推荐)
  • 使用成熟的清浮动样式类,clearfix
.clearfix:after,.clearfix:before{ content: "";display: table;} # 避免塌陷、清除浮动
.clearfix:after{ clear:both;} # 清除浮动
.clearfix{zoom:1;}

清除浮动的使用方法:

.con2{... overflow:hidden}
或者
<div class="con2 clearfix">
二、定位

1. 文档流
文档流,是指盒子按照html标签编写的顺序依次从上到下,从左到右排列,块元素占一行,行内元素在一行之内从左到右排列,先写的先排列,后写的排列在后面,每个盒子都占据自己的位置。
 
2. 关于定位
我们可以使用css的position属性来设置元素的定位类型,position的设置项如下:

position设置项功能
relative生成相对定位元素,元素所占据的文档流的位置保留,元素本身相对自身位置进行偏移
absolute生成绝对定位,元脱离文档流,不占据文档流的位置,可以理解为漂浮在文档流的上方,相对于上一个设置了定位的父级元素来进行定位,如果找不到,则相对于body元素进行定位。
fixed生成固定定位元素,元素脱离文档流,不占据文档流的位置,可以理解为漂浮在文档流的上方,相对于浏览器窗口进行定位
static默认值,没有定位,元素出现在正常的文档流中,相对于取消定位属性或者不设置定位元素
inherit从父元素继承position属性的值

 
3. 定位元素的偏移
定位元素还需要用left、right、top或者bottom来设置相对于参照元素的偏移量
 
4. 定位元素层级
定位元素是浮动的正常的文档流之上的,可以用z-index属性来设置元素的层级
伪代码如下:

.box01{
    ......
    position:absolute;  /* 设置了绝对定位 */
    left:200px;            /* 相对于参照元素左边向右偏移200px */
    top:100px;          /* 相对于参照元素顶部向下偏移100px */
    z-index:10          /* 将元素层级设置为10 */
}

5. 定位元素特性
绝对定位和固定定位的块元素和行内元素会自动转化为行内块元素

三、background属性

1. 属性解释:
background属性是css中应用比较多,且比较重要的一个属性,它是负责给盒子设置背景图片颜色的,background是一个复合属性,它可以分解成如下几个设置项:

  • background-color 设置背景颜色
  • background-image 设置背景图片地址
  • background-repeat 设置背景图片如何重复平铺
  • background-position 设置背景图片的位置
  • background-attachment 设置背景图片是固定还是随着页面滚动条滚动

实际应用中,我们可以用background属性将上面所有的设置项放在一起,而且也建议这么做,这么做性能更高,而且兼容性更好,比如:

background:#00FF00 url(bgimage.gif) no-repeat left center fixed

"#00FF00“是设置background-color
url(bgimage.gif)是设置background-image
no-repeat是设置background-repeat
left center 是设置background-position
fixed是设置background-attachment
各个设置项空格隔开,有的设置项不写也是可以的,它会使用默认值。

四、雪碧图

雪碧图,又称为精灵图,就是将网页制作中使用的多个小图片合并成一个图片,使用css技术将这张合成的图片应用在网页不同的地方,雪碧图可以减少网页加载时的http请求数,优化网页性能。
步骤:

  • 使用Photoshop新建一张背景透明的图片
  • 将小图片复制到此图片中,排列好每个图像的位置,图片幅面不够可以用画布大小调整大小
  • 按照所有小图片的范围裁剪图片,存在透明背景的png图片
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值