css深入理解vertical-align

第一讲:vertical-align家族基本认识

了解vertical-align支持的属性值以及组成

属性:

1.inherit

2.线类

baseline,top,middle,bottom

3.文本类

text-top,text-bottom

4.上标下标类

sub,super

5数值百分比类

20px,2em,20%

共性 都带数值 20px 20em 20%,都支持负值 margin,letter-spacing word-spacing vertical-align,行为表现一致 在baseline对齐基础上上下偏移对应数值大小

百分比类的差异

vertical-align的百分比值是相对于line-height计算的。

第二讲vertical-align起作用的前提

探讨各种display值对vertical-align的影响

vertical-align起作用是有条件的,应用于inline水平以及table-cell元素

inline水平的元素

img span strong em

inline-block input

table-cell元素

.table-cell:<td>

默认状态下:图片,按钮,文字,和单元格

1.display:更改元素的显示水平

2.css声明更改元素的显示水平

在一个P标签中的img标签 设置了vertical-align:middle 图片不居中

不是vertical-align没起作用,而是太短,不够居中

实战:多行文字与图片垂直居中

<div class="test-list">

<span>文字</span>

<img src="test.jpg"/>

</div>

.test-list {text-align:justify}

.test-list > span{ display:inline-block; width:210px; vertical-align:middle }

.test-list > img{vertical-align:middle;}

第三讲 vertical-align 与 ling-height

vertical-align百分比是相对于line-height值计算的

{

line-height:30px;

vertical-align:-10%;

}相当于vertical-align=-3px

内联图片里面下边出现了空白,解决方法去掉行高,或者改变vertical-align属性bottom,top,middle都可以

基本现象衍生:垂直居中

vertical-align:middle;line-height:36px;

设置标签应用比图片大的行高,图片就近似垂直居中了。

第四回  vertical-align线类属性值深入理解

底线,顶线,中线的行为表现

vertical-align:bottom

1.inline/inline-block元素:元素底部和整行的底部对齐

2.table-cell元素:单元格底padding边缘和表格行底部对齐

vertical-align:top

vertical-middle

1.inline/inline-block元素:元素的垂直中心点和父元素基线上1/2 x-height处对齐

2.table-cell元素:单元格填充盒子相对于外面的表格行居中对齐。

近似垂直居中

完全垂直居中:设置font-size:0

第五回     深入理解vertical-align文本类属性值

vertical-align:text-top/text-bottom

定义

1.vertical-algin:text-top

盒子的顶部和父级centent-area的顶部对齐

2.vertical-align:text-bottom

盒子的底部和父级content area的底部对齐

1.元素vertical-align垂直对齐的位置与前后的元素都没有关系;

2.元素vertical-align垂直对齐的位置与行高line-height没有关系,至于字体大小与font-size有关

实际作用

表情图片与文字的对齐效果 图片(16x16)

使用基线的问题在于图标偏上

使用顶线/底线的问题在于受其他内联元素影响,造成巨大定位偏差

使用中线也是不错的选择,单需要恰好的字体大小以及兼容性要求不高

使用文本底部较合适不受行高以及其他内联元素影响;

第六回 vertical-align上标下标类

1.html中的上标     <sup>

2.html中的下标     <sub>

变小的是原来字体的75%大小

1.<sup>    -->vertical-align:super

2.<sub>  -->vertical-align:sub

定义

1.vertical-align:super

提高盒子的基线到父级合适的上标基线位置。

2.vertical-align:sub

降低盒子的基线到父级合适的下标基线位置。

实际应用

第七回:vertical-align前后不一的作用机制

相邻元素不同vertical-align的行为表现

当出现前后不一致的时候

关注当前元素和父级,

前后并没有直接影响

第八回     vertical-align糟糕的兼容性

IE6/7

firefox/chrome

时间: 2024-08-01 10:44:56

css深入理解vertical-align的相关文章

CSS深入理解之line-height

以下文字整理自慕课网——张鑫旭的<CSS深入理解之line-height>. line-height,又称行高,指的是两行文字基线之间的距离. 定义三问: 什么是基线? 为何是基线? 需要两行? 如图红色线即为基线 基线乃*线定义之根本! 基线的扩展知识,稍作了解.如图: 第3个问题,一行文字难道就没有行高吗?非也,一行文字也是有行高的,两行的定义已经决定了一行的表现! 所以,行高表现为,如下图:(如果试想行高为0,那么两行文字将重合) 问题:为何line-height可以让单行文本垂直居中?

CSS初步理解

最近在学习牛腩的时候遇到了网页的制作,挺新鲜的.当中涉及到了有关CSS的知识,于是乎自己也就花费两个小时的时间,找了本浅显易懂的书来看了一遍,从宏观上来了解CSS的相关内容.有关CSS的基础知识详见下链接. CSS基础知识 以下是对CSS理解的导图 通过上图我们也发现,CSS也很难,也容易.容易是说,学起来很快就可以上手,这中语言简单易懂,只要你具备小学英语的知识量就可以了.困难是在指学好它并不容易,因为它需要你耐心.就好比我们对word文档的排版,哪里需要主体鲜明一点,哪里需要着重突出一下,哪

CSS深入理解之absolute(HTML/CSS)

absolute和float是同父异母的兄弟,因为它们具有相同点:包裹性与破坏性 absolute的特点 1.独立的,并且可以摆脱overflow的限制,无论是滚动还是隐藏: 2.无依赖,不受relative限制的,行为表现上是不使用top/right/bottom/left任何一个属性或使用auto作为值: 3.脱离文档流: 4.具有跟随性(依据这个特点,能省很多的relative,并且扩展性更强). 骚操作:使用注释来消除空格 <!doctype html> <html> &l

css深入理解padding

padding 中规中矩,性格温婉平和! 第一节:CSS padding与容器的尺寸--了解padding与元素尺寸之间关系 CSS padding与容器的尺寸关系复杂 对于block水平元素 没有padding的时候 .gay{width:50cm;} padding影响元素尺寸      (理解为人身体的脂肪,人和人之间的距离).gay{width:20cm;padding:0 12px;} 但是width:auto或box-sizing为border-box的时候 .gay{width:8

(测试文章,转载)CSS深入理解vertical-align和line-height的基友关系

一.想死你们了 几个星期没有写文章了,好忙好痒:个把月没有写长篇了,好忙好想:半个季度没在文章中唠嗑了,好痒好想. 后面一栋楼有对夫妻在吵架,声音雄浑有力,交锋酣畅淋漓,还以为只有小乡镇才有这架势,哦,突然想起来,我就是住在上海郊外的小乡镇上. 刚刚买了几十股京东的股票,第一次玩这个,看好京东的发展.其实股价21的时候就打算入手了,但是,转外汇的时候,提示,要工作时间.然后一忙二忘,等现在入的时候,已经涨了20%多了,科科,肥皂弄人啊!写到这里的时候,忍不住拿出手机一看,哎呦,不错哦,盈利28刀

line height 与 vertical align

一.line height 其中代表inline box(包含上下间距,若height==line-height,则行间距=line-height - font-size/2),big代表content area. 注: 若line-height < content area ,则line box要取line-height的值,这也是为什么会重叠的原因. line-height属性取值: 1. % 若自身没有设置line-height,则line-height = 父元素的font-size *

css深入理解之overflow

第一回 overflow基本属性 overflow基本属性 visibel hidden scroll auto inherit overflow-x和overflow-y overflow-x和overflow-y设置一样的值,等同于overflow.如果不同,其中一个赋予visibel,auto,另一个赋值visibel,auto ,hidden.则会被重置为auto. 作用的前提 1.非display:inline水平! 2.对应方位的尺寸限制,width/height/max-width

【转】CSS深入理解流体特性和BFC特性下多栏自适应布局

这篇文章发布于 2015年02月12日,星期四,23:36,归类于 css相关. 阅读 30873 次, 今日 63 次 by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=4588 一.开篇之言 要说web上实现两栏自适应布局的方法,一双手都数不过来.不知大家有没有细想过,为什么这些方法可以实现自适应布局呢? 本文就将深入探讨下流体特性和BFC特性下的两栏自适应布局,还是

[ css 深入理解 vertical-align line-height 属性 ] css中深入理解vertical-align和line-height的基友关系及实例演示的区别

一.想死你们了 几个星期没有写文章了,好忙好痒:个把月没有写长篇了,好忙好想:半个季度没在文章中唠嗑了,好痒好想. 后面一栋楼有对夫妻在吵架,声音雄浑有力,交锋酣畅淋漓,还以为只有小乡镇才有这架势,哦,突然想起来,我就是住在上海郊外的小乡镇上. 刚刚买了几十股京东的股票,第一次玩这个,看好京东的发展.其实股价21的时候就打算入手了,但是,转外汇的时候,提示,要工作时间.然后一忙二忘,等现在入的时候,已经涨了20%多了,科科,肥皂弄人啊!写到这里的时候,忍不住拿出手机一看,哎呦,不错哦,盈利28刀