一.垂直对齐属性的文字和图像位置

1、垂直对齐:垂直设置元素位置

2、应用场景: log垂直居中,下拉菜单垂直居中,控制文本和图像位置

3、语法: verticla-align (必须转换为内联块) )。

4、图文位置

只有元素类型为内联或内联块元素时,才支持垂直对齐属性

垂直对齐:基线; 缺省基线

垂直对齐:中间; 垂直方向与线高度范围的中心对齐。 图像外部字体的位置

垂直对齐:顶部; 垂直对齐线高度的上端

垂直对齐: bottom; 垂直对齐线高度的下端

垂直对齐:文本顶部; 垂直对齐文本上划线

垂直对齐:文本底部; 垂直对齐文本下划线

二.设置空白属性空白区域

空闲空间: normal; 默认值

空闲空间: nowrap; 文本不换行,文本在遇到br/标签之前在同一行继续;

white-space:pre; 保留空白字符意味着浏览器可以识别空白字符。

white-space :前线; 合并空白字符串,但保留换行符。

空闲空间:预失真; 保留部分空白字符串,但换行正常进行

区别【pre :保留所有空白区域,强制显示在一行

预填充:未完全保留空白区域,不强制显示在一行中

pre-line :保留部分空白区域(在文本中显示换行)】

三、溢出属性(设置超出框模型部分内容的显示状态) ) ) ) ) ) )。

板载:可视; 默认情况下,visible:不修剪内容,而是显示在元素框之外;

Overflow :隐藏; 隐藏:内容已修剪,其余内容不可见;

Overflow :自动; 自动:如果内容已修剪,则浏览器将显示滚动条,从中可以查看其他内容; (字体出来才有条)

Overflow :滚动; scroll :会裁剪内容,但会在浏览器中显示滚动条,以便查看其馀内容; )字体不超出也可以项目符号,但不能滚动) ) ) )。

四.文本溢出属性处理文本溢出

文本溢出:剪辑; 默认情况下(“overflow :添加隐藏对象后仍有相同的效果”(省略号)…)不显示,而是简单的裁剪。

文本溢出: ellipsis; 单行文本溢出时显示省略标记

注:必须添加以下三个值才能实现

五、多行文本充斥(不太用的这是旧版盒子模型的) )。

显示:-WebKit-box; 将“转换为旧长方体模型”对象显示为弹性伸缩长方体模型

– WebKit-box-orient :垂直; 或者,设置伸缩框对象的子元素的放置

-webkit-line-clamp: 3; 用于限制在一个块元素中显示的文本行数。 )

文本溢出: ellipsis

Overflow :隐藏;

六.宽度和高度的适应

1、定义:网页布局中多定义元素的宽度和高度。 但是,通常希望自动调整元素的大小以适合窗口或子元素。 这就是适应

元素的适应性在网页布局中非常重要,使网页显示更加灵活,可以按设备、窗口和分辨率进行显示。

1、不设置宽度一般给出最大的箱子(浮动后的宽度不能继承来自父元素的宽度) ) ) )。

2、宽度单位不使用px,相对单位如%; 一般是里面的容器

3、在最小宽度、最大宽度上设置。 用于响应式布局

自适应宽度:如果页面的显示区域大于此宽度,则根据宽度的百分比缩放。

小于或等于此宽度时将涵盖参考示例。 小米会放大缩小

高度适应性

1、不写高度,

有问题。 如果子元素浮动,父元素将高度聚合。 (高度塌了)

2、高度单位不用px,相对单位如%;

默认情况下,height无效,body,html{height:100%; }

3、采用最小-高、最大-高设置。

最小高度与IE6不兼容,需要调试。

七、假对象选择器(权重值为1 ) ) ) ) ) ) )。

八、

可视:隐藏和显示:无; 有什么不同?

visibility:hidden/visible;隐藏/可见

visibility:hidden;和display:none;相同点都是隐藏显示的区域

visibility:hidden;和display:none;的区别:

visibility:hidden;属性会使对象不可见,但该对象在网页所占的空间没有改变,等于留出了一块空白区域,而 display:none属性会使这个对象彻底消失。

九、清除高度塌陷的四种解决方法

1、给产生高度塌陷的父亲元素加overflow:hidden

实现原理;触发bfc,bfc在计算高度时会把浮动的元素的高度计算在内

缺点:如果有定位的元素时则会隐藏!!!!!!!

2、额外标签法:给产生高度塌陷的元素最后面添加一个div(必须添加一个块元素行内内元素不行),并且给他设置高度为0,clear:both(清除浮动对添加div的影响)

实现原理:清除浮动带来的影响

缺点:代码的冗余

3、after伪元素(堵住后面打儿子):after{content“.”;display:block;vlear:both;height:0;overflow:hidden;visibility:hidden}

好处:a、如果一个界面中有多个高度塌陷的存在,减少重复代码的使用量

b、避免了定位元素被隐藏

4、双伪元素(堵前门后门打儿子)

和上面的第三种一样唯一不一样的地方就是display转换的元素不一样

十、清除浮动总结

附注1、一排logo图片居中

 

<!DOCTYPE html>

<html lang=”en”>

<head>

<meta charset=”UTF-8″>

<title>Document</title>

<style>

*{

padding: 0;

margin: 0;

}

li{

list-style: none;

}

ul{

width: 800px;

height: 100px;

margin: 0 auto;

/* background-color: pink; */

}

li{

width: 100px;

height: 100px;

line-height: 100px;

display: inline-block;

/* background-color: red; */

text-align: center;

}

img{

display: inline; /*这个属性只针对行内或者行内块元素才能生效*/

vertical-align: middle;

}

li:hover{

background: url(img/bg的副本.png) no-repeat ;

}

</style>

</head>

<body>

<ul>

<li>

<img src=”img/logo1的副本.png”>

</li>

<li>

<img src=”img/logo2的副本.png”>

</li>

<li>

<img src=”img/logo3的副本.png”>

</li>

<li>

<img src=”img/logo4的副本.png”>

</li>

<li>

<img src=”img/logo5的副本.png”>

</li>

<li>

<img src=”img/logo6的副本.png”>

</li>

<li>

<img src=”img/logo7的副本.png”>

</li>

</ul>

</body>

</html>