css中vertical-align垂直居中的认识
目标大纲
1.vertical-align为何不起作用??
vertical-align只钟情于“inline-block内联块级元素/inline元素”
vertical-align属性 text-bottom是与父标签的文字底部对齐
效果
栗子:
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
- <title>Document</title>
- <style>
- .box {
- background-color: #000;
- color:#fff;
- padding-left: 25px;
- }
- .dot {
- display: inline-block;
- width: 4px;
- height: 4px;
- background-color: orangered;
- vertical-align: text-bottom;/*是与父标签的文字底部对齐*/
- }
- </style>
- </head>
- <body>
- <div class="box">
- <span class="dot"></span>我是一段文本.....
- </div>
- </body>
- </html>
2.如何消除图片下面的间隙是如何出现的??
源代码
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>vertical-align</title>
- <style>
- * {
- margin: 0;
- padding: 0;
- }
- .box {
- background-color: deeppink;
- color: #fff;
- padding-left: 10px;
- line-height: 65px;
- }
- .inner-box {
- display: inline-block;
- width: 4px;
- height: 4px;
- background-color: black;
- vertical-align: text-bottom; /*与父容器标签底部对齐*/
- }
- .box_1 {
- background-color: royalblue;
- margin-top: 5px;
- color: #fff;
- padding-left: 10px;
- }
- .box_1 img {
- width: 65px;
- }
- .box_1 span {
- background-color: red;
- }
- </style>
- </head>
- <body>
- <div class="box">
- <span class="inner-box"></span>
- 这是一段文本内容_vertical-align......
- </div>
- <div class="box_1">
- <img src="img/photo.jpg" /><span>这是一段文本内容_vertical-align......</span>
- </div>
- </body>
- </html>
默认情况下图片vertical-align与一段文本的基线baseline对齐,由于文本存在line-height高度,所以就会出现间隙
3.如何消除图片下面的空白间隙??
a.设置vertical-align值,vertical-align: top/middle/bottom;
- img { vertical-align: top; }
b.让vertical-align失效,vertical-align 只对“inline-block内联块级元素”有效,我们只设置图片display:block就可以搞定
- img { display: block;}
c.设置line-height行高足够小
- div.box_1 { line-height: 5px;}
d.通过line-height间接控制,font-size字体足够小
- div.box_1 { font-size: 0; /*字体足够小*/}
消除图片下面空白间隙的几种方法源码
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>消除图片下面空白间隙的几种方法(原因vertical-align与line-height导致)</title>
- <style>
- .box_1 {
- background-color: royalblue;
- margin-top: 5px;
- color: #fff;
- padding-left: 10px;
- font-size: 0;/*字体足够小*/
- /* line-height: 5px;*/
- }
- .box_1 img {
- /*vertical-align: top;文字与父标签的顶部对齐*/
- /*vertical-align: middle;*/
- /*display: block;*/
- }
- .box_1 span {
- background-color: red;
- }
- </style>
- </head>
- <body>
- <div class="box_1">
- <img src="img/photo.jpg" width="65"/>
- <span>这是一段文本内容_vertical-align......</span>
- </div>
- </body>
- </html>
【资料参考】
http://www.zhangxinxu.com/wordpress/2015/08/css-deep-understand-vertical-align-and-line-height/
http://www.zhangxinxu.com/wordpress/2010/05/我对css-vertical-align的一些理解与认识(一)/
css中vertical-align垂直居中的认识的更多相关文章
- 前端知识点回顾之重点篇——CSS中vertical align属性
来源:https://www.cnblogs.com/shuiyi/p/5597187.html 行框的概念 红色(line-height)为行框的顶部和底部,绿色(font-size)为字体的高度, ...
- CSS中设置DIV垂直居中的N种方法 兼容IE浏览器
在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...
- CSS中设置div垂直居中
在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...
- css中的左右垂直居中的问题,可兼容各种版本浏览器的写法
如题分为垂直居中,左右居中,先挑简单的记录. 一.左右居中 1.我刚开始写代码的时候,老师就直接告诉我一个简单的方法,那就是: width:500px; height:200px; margin:0 ...
- css中元素水平垂直居中4种方法介绍
table-cell轻松设置文本图片水平垂直居中 让一个元素垂直居中的思路:把这个元素的容器设置为table-cell,也就是具有表格单元格的特性,再使用vertical-align(这个属性对blo ...
- CSS中图片水平垂直居中方法小结
写页面时难免会遇到水平垂直居中的问题,总结一下最近使用的方法. 一.使用垂直居中和水平居中 <div id="div1"> <img src="img/ ...
- 在CSS中水平居中和垂直居中:完整的指南
这篇文章将会按照如下思路展开: 一.水平居中 1. 行内元素水平居中 2. block元素水平居中 3. 多个块级元素水平居中 二.垂直居中 1. 行内元素水平居中 2. block元素水平居中 3. ...
- CSS中元素水平居中和垂直居中的方法
#CSS中水平居中和垂直居中的方法 一. 水平居中 1.行内元素(文本,图片等) 如果被设置元素为文本.图片等行内元素时,可以通过给父元素设置` text-align:center;` 来实现 2.定 ...
- CSS中有关水平居中和垂直居中的解决办法
CCS中让div等块级元素在父级元素中居中的方法: (1)div{ margin:0 auto } 该方法只能实现水平的居中,无法实现元素的垂直居中 (2)当div元素的宽高是固定的,然后设置位 ...
- CSS布局中的水平垂直居中
CSS布局中的水平垂直居中 各位好,先说两句题外话.今天是我开通博客园的博客第一天,虽然我申请博客园的账号已经有一年半了,但是由于各种原因迟迟没有开通自己的博客.今天非常有幸开通博客,在此也写一篇关于 ...
随机推荐
- SQLite帮助类SQlitehelper 实现对SQLite数据的增删改查
public class SQLiteHelper { public const string sConn = "Data Source=" + @"path" ...
- iOS完整学习路线图
- ORA-01652:无法通过128(在表空间temp中)扩展temp段 解决方法
ORA-01652:无法通过128(在表空间temp中)扩展temp段 解决方法 (2016-10-21 16:49:53) 今天在做一个查询的时候,报了一个"ORA-01652无法通过 ...
- c#利用泛型集合,为自己偷偷懒。
有人说"越懒"的程序员进步的越快!其实还挺有道理.亲身体验,从刚出来工作到现在,自己变"懒"了许多,但感觉写出来的代码确有了不少提升.刚开始啊,同样的代码,赋值 ...
- 传智播客--高级控件--showdialog关闭(小白内容)
以往我在WPF里,用ShowDialog展示出一个页面,一般都是用Close()进行关闭. 今天看传智播客的视频时,了解到还能直接给DialogResult一个TRUE或者false的属性,使页面关闭 ...
- MVC4做网站Demo进行重写的问题。
自从学习MVC4开始,边学边写这个demo,写了也有一年多了.开始觉得是一个小例子把所有的代码都写在一个项目中,边写边改越写越混乱,越到后来很多东西自己都理不清了.后来在群里跟 @怒放 在讨论这个问题 ...
- Delete Volume 操作 - 每天5分钟玩转 OpenStack(57)
今天讨论 cinder 如何删除 volume . 状态为 Available 的 volume 才能够被 delete.如果 volume 当前已经 attach 到 instance,需要先 de ...
- JavaScript之糟粕
0.导言 在上篇<JavaScript之毒瘤>中,列举了一些在JavaScript中难以避免的问题特性.本篇将会展示JavaScript中有问题的特性,但我们很容易就能便面它们.通过这些简 ...
- 前端工程优化:javascript的优化小结
我觉得优化javascript是一门高深的学问,在这里也只能站在前人的肩膀上,说一些我浅显的认识,更希望的是抛钻引玉,如有不对,敬请斧正. 首先,要认识到是,优化js的关键之处在于,优化它的运行速度 ...
- tomcat:there is no resources that can be added or removed from server
原因: 1.不是web project 解决方式:project-->property--project facet 新建或者修改 2. 版本不兼容 升级tomcat版本