vertical-align属性
准备阶段
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属性的更多相关文章
- 前端知识点回顾之重点篇——CSS中vertical align属性
来源:https://www.cnblogs.com/shuiyi/p/5597187.html 行框的概念 红色(line-height)为行框的顶部和底部,绿色(font-size)为字体的高度, ...
- HTML 标签元素的 align 属性
align 属性规定段落中文本的对齐方式. 有 left right center justify 这些参数 left right center 就是左对齐 右对齐 中间对齐 justify ...
- What is Vertical Align?
https://css-tricks.com/what-is-vertical-align/ ************************************************* CSS ...
- 关于Vertical Align的理解
1:vertical-align 翻译就是垂直-对齐... 2:关于line-height的点 2.1:如果一个标签没有定义height属性,那么其最终表现的高度一定是由line-height起作用. ...
- 浏览器兼容CSS代码:按钮文字垂直居中(input button text vertical align)
经过测试的浏览器:IE6, IE7, IE8, IE9, Firefox, Chrome, Safiri, Maxthon 按钮的HTML代码: <input id="btn_comm ...
- img 的 align 属性
AbsBottom 图像的下边缘与同一行中最大元素的下边缘对齐. AbsMiddle 图像的中间与同一行中最大元素的中间对齐. Baseline 图像的下边缘与第一行文本的下边缘对齐. Bottom ...
- delphi Align属性
---------------------------------------------- -
- 【HTML&CSS】 第二章:标准模式下的页面与怪异模式下的页面区别
盒模型 前面提到,盒模型(box mode)是浏览器 Quirks Mode 和 Standards Mode 的主要区别. 描述 对于“盒模型”一词并没有明确的文档定义,它是开发人员描述 CSS 中 ...
- CSS居中对齐终极指南
本文首发于我的公众号:前端新世界 欢迎关注 本文将讨论可用于居中对齐元素的6种CSS技术(按照最佳实践排序),以及每一种技术最适合应用的场景.这里,居中对齐指的是将元素放置在其父元素的水平和垂直中心. ...
- HTML中的align和valign这两个属性
转自:https://www.douban.com/note/325833958/ align和valign属性均是规定表格相对于周围元素的对齐方式,区别就在于: 1.align属性趋向于左右对齐,其 ...
随机推荐
- Android中有关relativeLayout 和EditText的一些属性
http://www.cnblogs.com/jqyp/archive/2010/10/23/1859182.html RelativeLayout用到的一些重要的属性: 第一类:属性值为true ...
- 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 ...
- Sping Environment为Null的原因和解决方法
参考:https://github.com/spring-projects/spring-boot/issues/4711 这个issue提出不到20天给我搜出来了,还是相信google的强大 问题: ...
- 纪念逝去的岁月——C++实现一个栈
1.代码 2.运行结果 1.代码 stack.cpp #include <stdio.h> #include <string.h> class ClsStack { priva ...
- IE6及以上版本fixed问题解决方案,页面右下角固定页面,可以最大化、最小化、正规显示
在窗口固定位置显示内容使用fixed,但是 IE 6 不支持,后来我搜了很多方法,都没有作用,后来类比着一个网站的代码,使用absolute .z-index解决了问题. 页面div结构: <d ...
- Background agent
Periodic Task Periodic agents run for a small amount of time on a regular recurring interval. Typica ...
- 李洪强漫谈iOS开发[C语言-052]-for循环
- Java面向对象编程
面向对象的软件开发: 面向对象的开发把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的对象能够组合成复杂的子系统. 面向对象的开发方法具有以下优点: 1.把软件系统看成是各种对象的集合,更 ...
- [LintCode] Segment Tree Build 建立线段树
The structure of Segment Tree is a binary tree which each node has two attributes start and end deno ...
- php读取html文件(或php文件)的方法
一.使用fopen()函数 此函数主要传入的是头两个参数(第一个是文件地址,第二个是打开方式),可以读取任何一个文本文件,然后用while将fopen函数读取到的每一行数据循环输出. 如: ...