准备阶段

vertical-align取值及含义:

含义
baseline 默认。元素放置在父元素的基线上。
top 把元素的顶端与行中最高元素的顶端对齐
text-top 把元素的顶端与父元素字体的顶端对齐
middle 把此元素放置在父元素的中部。
text-bottom 把元素的底端与父元素字体的底端对齐。
bottom 把元素的顶端与行中最低的元素的顶端对齐。
sub 垂直对齐文本的下标。
super 垂直对齐文本的上标
% 使用 "line-height" 属性的百分比值来排列此元素。允许使用负值。
length  垂直方向上对齐,负值向下,正值向上
 inherit  规定应该从父元素继承 vertical-align 属性的值。

注意:vertical-align属性只对行内元素(inline/inline-block)生效。

top/text-top/middle/baseline/text-bottom/bottom

用下图描述这六个属性对应的垂直位置:

接下来进一步验证:

测试代码如下:

<style>
.refer {
color: #fff;
font-size: 32px;
line-height: 64px;
background: #000;
height: 100px;
} .vertical {
font-size: 16px;
line-height: 16px;
display: inline-block;
width: 150px;
height: 20px;
border: 1px solid #fff;
}
</style>
<div class="refer">
line-height: 64px
<span class="vertical" style="vertical-align: top">top</span>
<span class="vertical" style="vertical-align: text-top">text-top</span>
<span class="vertical" style="vertical-align: middle">middle</span>
<span class="vertical" style="vertical-align: baseline">baseline</span>
<span class="vertical" style="vertical-align: text-bottom">text-bottom</span>
<span class="vertical" style="vertical-align: bottom">bottom</span>
</div>

效果如下:

从上面三个图可以得出下面的结论:

1、top:把元素的顶端与行中最高元素的顶端对齐

2、bottm:把元素的底端与行中最低元素的底端对齐

3、text-top:把元素的顶端与父元素字体的顶端对齐

4、text-bottom:把元素的底端与父元素字体的底端对齐

5、middle:把元素放置在父元素的中部

6、baseline:元素内容的底部放置在父元素的基线上(默认值)

注意:用红色文字标示出谁以谁为参照

super/sub

测试代码如下:

<div>
参照物
<sup>上标</sup>
<span style="vertical-align:super">上标</span>
</div>
<div>
参照物
<sub>下标</sub>
<span style="vertical-align:sub">下标</span>
</div>

效果图如下:

从上图可以得出结论:

1、super:元素内容的底部与父元素文字上标的底端对齐

2、sub:元素内容的底部与父元素文字下标的底端对齐

length/%

测试代码如下:

<div>
参照物
<span style="vertical-align:10px">vertical-align:10px</span>
<span style="vertical-align:-10px">vertical-align:-10px</span>
</div>

效果图如下:

从上图可以得出结论:

1、length:元素以原位置为基准,垂直方向移动,可以取正负值

2、%:元素以原位置为基准,取值以父元素的line-height属性为基准,垂直方向移动,可以取正负值(如果父元素的line-height: 0;以"%"设置vertical-align也无效果)

vertical-align属性的更多相关文章

  1. 前端知识点回顾之重点篇——CSS中vertical align属性

    来源:https://www.cnblogs.com/shuiyi/p/5597187.html 行框的概念 红色(line-height)为行框的顶部和底部,绿色(font-size)为字体的高度, ...

  2. HTML 标签元素的 align 属性

    align 属性规定段落中文本的对齐方式. 有 left  right center  justify 这些参数 left  right center  就是左对齐 右对齐 中间对齐 justify  ...

  3. What is Vertical Align?

    https://css-tricks.com/what-is-vertical-align/ ************************************************* CSS ...

  4. 关于Vertical Align的理解

    1:vertical-align 翻译就是垂直-对齐... 2:关于line-height的点 2.1:如果一个标签没有定义height属性,那么其最终表现的高度一定是由line-height起作用. ...

  5. 浏览器兼容CSS代码:按钮文字垂直居中(input button text vertical align)

    经过测试的浏览器:IE6, IE7, IE8, IE9, Firefox, Chrome, Safiri, Maxthon 按钮的HTML代码: <input id="btn_comm ...

  6. img 的 align 属性

    AbsBottom 图像的下边缘与同一行中最大元素的下边缘对齐. AbsMiddle 图像的中间与同一行中最大元素的中间对齐. Baseline 图像的下边缘与第一行文本的下边缘对齐. Bottom ...

  7. delphi Align属性

    ---------------------------------------------- -

  8. 【HTML&CSS】 第二章:标准模式下的页面与怪异模式下的页面区别

    盒模型 前面提到,盒模型(box mode)是浏览器 Quirks Mode 和 Standards Mode 的主要区别. 描述 对于“盒模型”一词并没有明确的文档定义,它是开发人员描述 CSS 中 ...

  9. CSS居中对齐终极指南

    本文首发于我的公众号:前端新世界 欢迎关注 本文将讨论可用于居中对齐元素的6种CSS技术(按照最佳实践排序),以及每一种技术最适合应用的场景.这里,居中对齐指的是将元素放置在其父元素的水平和垂直中心. ...

  10. HTML中的align和valign这两个属性

    转自:https://www.douban.com/note/325833958/ align和valign属性均是规定表格相对于周围元素的对齐方式,区别就在于: 1.align属性趋向于左右对齐,其 ...

随机推荐

  1. Sphinx 实时索引

    index rt { type = rt rt_mem_limit = 512M path = /usr/local/sphinx/data/rt rt_field = title rt_field ...

  2. 20161003 NOIP 模拟赛 T2 解题报告

    Weed duyege的电脑上面已经长草了,经过辨认上面有金坷垃的痕迹. 为了查出真相,duyege 准备修好电脑之后再进行一次金坷垃的模拟实验. 电脑上面有若干层金坷垃,每次只能在上面撒上一层高度为 ...

  3. HDU 4002 Find the maximum(欧拉函数)

    题目链接 猜了一个结论,题面跟欧拉函数有关系. import java.util.*; import java.math.*; import java.text.*; import java.io.* ...

  4. Oracle常用监控SQL

    1.监控事例的等待: select event,sum(decode(wait_time,0,0,1)) prev, sum(decode(wait_time,0,1,0)) curr,count(* ...

  5. Flex与.net进行URL参数传递编码处理

    在JS中用到的三种编码方式escape 对应于Flex中是一样的,并且支持相互的解码 var a:String = "超越梦想#"; trace(escape(a)); //%u8 ...

  6. Java EE 学习总结

    1.Java EE WEB 工程项目文件结构 组成:静态HTML页.Servlet.JSP和其他相关的class: 每个组件在WEB应用中都有固定的存放目录. WEB应用的配置信息存放在web.xml ...

  7. Oracle连接超时

    客户机 要想 连接 oracle服务机(装了数据库的机子),只需要在客户机配置一个 本地服务名就行了,不管你用Oracle服务端的配置工具 还是客户端的配置工具,都没有问题. 如果只是客户机连接服务机 ...

  8. 清除BOM头源码

    BOM: Byte Order Mark UTF-8 BOM又叫UTF-8 签名,其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16,UTF-32才加上的BOM,BOM签名的意思就是 ...

  9. css3动画在动作结束时保持该状态不变的解决办法

    animation-fill-mode : none | forwards | backwards | both; none:不改变默认行为. forwards :当动画完成后,保持最后一个属性值(在 ...

  10. servlet session 相关

    1.session是server维护的一个变量,如果消除每个session?----这里只做指定key的session删除 1.1.显示调用 废除指定key的session session.remov ...