准备阶段

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

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

接下来进一步验证:

测试代码如下:

  1. <style>
  2. .refer {
  3. color: #fff;
  4. font-size: 32px;
  5. line-height: 64px;
  6. background: #000;
  7. height: 100px;
  8. }
  9.  
  10. .vertical {
  11. font-size: 16px;
  12. line-height: 16px;
  13. display: inline-block;
  14. width: 150px;
  15. height: 20px;
  16. border: 1px solid #fff;
  17. }
  18. </style>
  19. <div class="refer">
  20. line-height: 64px
  21. <span class="vertical" style="vertical-align: top">top</span>
  22. <span class="vertical" style="vertical-align: text-top">text-top</span>
  23. <span class="vertical" style="vertical-align: middle">middle</span>
  24. <span class="vertical" style="vertical-align: baseline">baseline</span>
  25. <span class="vertical" style="vertical-align: text-bottom">text-bottom</span>
  26. <span class="vertical" style="vertical-align: bottom">bottom</span>
  27. </div>

效果如下:

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

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

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

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

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

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

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

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

super/sub

测试代码如下:

  1. <div>
  2. 参照物
  3. <sup>上标</sup>
  4. <span style="vertical-align:super">上标</span>
  5. </div>
  6. <div>
  7. 参照物
  8. <sub>下标</sub>
  9. <span style="vertical-align:sub">下标</span>
  10. </div>

效果图如下:

从上图可以得出结论:

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

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

length/%

测试代码如下:

  1. <div>
  2. 参照物
  3. <span style="vertical-align:10px">vertical-align:10px</span>
  4. <span style="vertical-align:-10px">vertical-align:-10px</span>
  5. </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. Android中有关relativeLayout 和EditText的一些属性

      http://www.cnblogs.com/jqyp/archive/2010/10/23/1859182.html RelativeLayout用到的一些重要的属性: 第一类:属性值为true ...

  2. Leetcode Minimum Path Sum

    Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...

  3. Sping Environment为Null的原因和解决方法

    参考:https://github.com/spring-projects/spring-boot/issues/4711 这个issue提出不到20天给我搜出来了,还是相信google的强大 问题: ...

  4. 纪念逝去的岁月——C++实现一个栈

    1.代码 2.运行结果 1.代码 stack.cpp #include <stdio.h> #include <string.h> class ClsStack { priva ...

  5. IE6及以上版本fixed问题解决方案,页面右下角固定页面,可以最大化、最小化、正规显示

    在窗口固定位置显示内容使用fixed,但是 IE 6 不支持,后来我搜了很多方法,都没有作用,后来类比着一个网站的代码,使用absolute .z-index解决了问题. 页面div结构: <d ...

  6. Background agent

    Periodic Task Periodic agents run for a small amount of time on a regular recurring interval. Typica ...

  7. 李洪强漫谈iOS开发[C语言-052]-for循环

  8. Java面向对象编程

    面向对象的软件开发: 面向对象的开发把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的对象能够组合成复杂的子系统. 面向对象的开发方法具有以下优点: 1.把软件系统看成是各种对象的集合,更 ...

  9. [LintCode] Segment Tree Build 建立线段树

    The structure of Segment Tree is a binary tree which each node has two attributes start and end deno ...

  10. php读取html文件(或php文件)的方法

    一.使用fopen()函数   此函数主要传入的是头两个参数(第一个是文件地址,第二个是打开方式),可以读取任何一个文本文件,然后用while将fopen函数读取到的每一行数据循环输出.   如:   ...