div内有内联元素时的高度
- 字体之间通过基线对齐,每个字体的行之间都有一个建议行高。即使确定font-size 的高度,但是未必能确定包含字体的div行高是多少。
- 当div包含一个内联元素,他的高度由字体的行高确定,与字体的大小无关
内联元素之间的空格
- 两个inline元素之间有任何回车,tab,换行或其他任意字符,都会变成空格
- 中文的姓名与联系方式对齐方式技巧
- 导航栏li元素横排不要使用inline-block方法,用float+清除浮动
文档流
-
文档流就是内联元素会自动的从左向右流动,如果被挡住,就再次从左向右流动
- 下面代码就是当一个字包含多个字符时,如果不加分隔符
-
,HTML就会默认他是一个字并且不会换行,解决方法就是word-break: break-all
- 下面代码就是当一个字包含多个字符时,如果不加分隔符
多行文字溢出
-
单行文字溢出
- code: http://js.jirengu.com/fufus/1/edit
- 效果:
-
多行文字溢出
- code: http://js.jirengu.com/foyuk/2/edit
- 效果:
文字垂直居中
- 固定高度的div中文字垂直居中
- code: http://js.jirengu.com/kodur/1/edit
- 效果:
div内有块级元素时的高度
margin合并
-
当一个div(parent)包裹了一个div(child),
parent
的高度取决于child
的高度+padding
+margin
(分情况): -
如果
parent
和child
之间有border
或padding
,parent
和child
之间的margin
不会合并,parent
的高度就是child
的高度+padding
+margin
(这里也可以用overflow:hidden
,但不推荐使用) -
反之,
parent
的高度就是child
的高度+padding
div内有块级元素和内联元素时的高度
- div的高度是由它内部文档流元素的高度总和决定的,并不是简单的元素高度相加。内联元素从左到右,排不下另起一行;块级元素从上到下,每个都另起一行
- 元素可以通过float,设置position为absolute或fixed脱离文档流,计算父元素高度就不会算上
div垂直水平居中
- 外部div宽高都没有确定时:
- code: http://js.jirengu.com/kapec/5/edit
- 效果:
- 外部div高度确定是全屏:
- code: http://js.jirengu.com/kapec/4/edit
- 效果: 只能在child高度和宽度确定下才行
- code:http://js.jirengu.com/kapec/9/edit
- 效果: flex布局就可以做到child高度自适应
实现一比一的div
- div的宽度和高度一致
- 效果: http://js.jirengu.com/qutoc/1/edit
1 |
|