inline-block的简单理解
1. 概念display:inline-block
将对象呈现为inline对象,但是对象的内容作为block对象呈现。之后的内联对象会被排列在同一行内。比如我们可以给一个link(a元素)inline-block属性值,使其既具有block的宽度高度特性又具有inline的同行特性,甚至更多,比如 inline-block 元素也可以设置 vertical-align 属性。inline-block 后的元素就是一个格式化为行内元素的块容器。其他的内联元素可以和其显示在同一行,中间允许有空格。
2. 使用
(1) display:inline-block可以用来处理行内元素不等高对齐排列问题(列表布局),防止出现过高元素下方没有元素排列,而是被挤到该元素的右下方。(vertical-align: top/bottom;设置对齐的基准线)
(2)修正IE6中浮动元素的双边距问题
(3)水平放置多个类似块blo ck元素而不需要使用float
(4)使一个inline元素具有高宽边距而其依然能够保持inline
3. 水平间隙问题
关于使用display:inline-block带来的水平间隙问题,产生该水平间隙的原因主要是HTML中的换行符、空格符、制表符等合并为空白符,在字体不为0的情况下,空白符将会产生一定的宽度,即产生了元素间的水平间隙。
解决该水平间隙的方法有:(1)字体大小设置为0,即font-size:0;此时要注意父元素字体大小设置后会影响到子元素字体大小,要记得将子元素字体大小重置!(2)合理地设置letter-spacing的值(负值)!(3)合理地设置word-spacing的值(负值)!(4)前一个标签的结束标签和后一个标签的开始标签连续使用,或者后一个嵌套标签的结束标签连续使用,不空格!合理的使用(1)(2)(3)(4)的css hack可以解决display:inline-block后元素间的水平间隙问题。
4. IE下实现display:inline-block的方法
(1)先使用display:inline-block触发块元素,然后再定义display:inline,让块元素呈递为内联对象。两个display要放在两个css声明中才能生效。
div {display:inline-block;...}
div {display:inline;}
(2)直接让块元素设置为内联对象display:inline;再触发layout,如zoom:1;
div {display:inline; zoom:1;...}
inline-block的简单理解的更多相关文章
- input屏蔽历史记录 ;function($,undefined) 前面的分号是什么用处 JSON 和 JSONP 两兄弟 document.body.scrollTop与document.documentElement.scrollTop兼容 URL中的# 网站性能优化 前端必知的ajax 简单理解同步与异步 那些年,我们被耍过的bug——has
input屏蔽历史记录 设置input的扩展属性autocomplete 为off即可 ;function($,undefined) 前面的分号是什么用处 ;(function($){$.ex ...
- git的简单理解及基础操作命令
前端小白一枚,最近开始使用git,于是花了2天看了廖雪峰的git教程(偏实践,对于学习git的基础操作很有帮助哦),也在看<git版本控制管理>这本书(偏理论,内容完善,很不错),针对所学 ...
- 关于Block的简单使用
Block在整个iOS开发中无所不见,很重要,很重要,文本在这里block的简单使用介绍.我们可以简单地定义.使用block. 1. Block和C的指针函数很像,但比C的函数灵活多了.废话了.... ...
- 简单理解Struts2中拦截器与过滤器的区别及执行顺序
简单理解Struts2中拦截器与过滤器的区别及执行顺序 当接收到一个httprequest , a) 当外部的httpservletrequest到来时 b) 初始到了servlet容器 传递给一个标 ...
- [转]简单理解Socket
简单理解Socket 转自 http://www.cnblogs.com/dolphinX/p/3460545.html 题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公 ...
- Js 职责链模式 简单理解
js 职责链模式 的简单理解.大叔的代码太高深了,不好理解. function Handler(s) { this.successor = s || null; this.handle = funct ...
- Deep learning:四十六(DropConnect简单理解)
和maxout(maxout简单理解)一样,DropConnect也是在ICML2013上发表的,同样也是为了提高Deep Network的泛化能力的,两者都号称是对Dropout(Dropout简单 ...
- Deep learning:四十二(Denoise Autoencoder简单理解)
前言: 当采用无监督的方法分层预训练深度网络的权值时,为了学习到较鲁棒的特征,可以在网络的可视层(即数据的输入层)引入随机噪声,这种方法称为Denoise Autoencoder(简称dAE),由Be ...
- 简单理解dropout
dropout是CNN(卷积神经网络)中的一个trick,能防止过拟合. 关于dropout的详细内容,还是看论文原文好了: Hinton, G. E., et al. (2012). "I ...
- 我们为之奋斗过的C#-----C#的一个简单理解
我们首先来简单叙述一下什么是.NET,以及C#的一个简单理解和他们俩的一个区别. 1 .NET概述 .NET是Microsoft.NET的简称,是基于Windows平台的一种技术.它包含了能在.NET ...
随机推荐
- SQL多条件查询安全高效比较
ALTER PROCEDURE _tmp @ID VARCHAR(50), @PN VARCHAR(50), @Type INT AS BEGIN /************************* ...
- js之字面量、对象字面量的访问、关键字in的用法
一:字面量含义 字面量表示如何表达这个值,一般除去表达式,给变量赋值时,等号右边都可以认为是字面量. 字面量分为字符串字面量(string literal ).数组字面量(array literal) ...
- [POJ1681]Painter's Problem(高斯消元,异或方程组,状压枚举)
题目链接:http://poj.org/problem?id=1681 题意:还是翻格子的题,但是这里有可能出现自由变元,这时候枚举一下就行..(其实这题直接状压枚举就行) /* ━━━━━┒ギリギリ ...
- CUBRID学习笔记 20 默认的并发规则
默认的设置是ISOLATION LEVEL 3 语法 SET TRANSACTION ISOLATION LEVEL 3; 最笨.官网的图不错看图吧 session 1 session 2 ;auto ...
- git sshkeygen Fingerprint cannot be generated解决方法
ssh-keygen -t rsa -C "xxx@xxx.com" 生成后使用cat或者vim 查看该rsa,然后复制到github的ssh keys中: 提示: ...
- run a Freight robot (2)
3. Network Setup Connecting Freight to a Monitor The easiest way to configure the wireless networki ...
- run a Freight robot (1)
1. Freight robot The Fetch and Freight Research Edition Robots are indoor laboratory robots. Coordin ...
- web服务器安装配置
学习目标 javaweb概念和web资源分类 服务器的分类和常用服务器apache说明 tomcat 服务器目录结构介绍和工程发布 虚拟主机说明和配置 1.Web的概念 1.1.JavaWeb的概念 ...
- 转 cocos2dx内存优化
cocos2dx里面,sprite本身不消耗多少内存,只是关联的材质文件消耗内存.假设有10个sprite关联同一个材质,也不会有10倍消耗. 关于图片占用的材质内存,我觉得还有好几种优化手段:1.对 ...
- sql for xml 嵌套
找很久.原来差一个ELEMENTS 关键字. 想到哪里插入子节点.就直接写一条语句,加一个ELEMENTS. 为什么baidu这么就都找不到.到处都是转来转去的东西.郁闷. select h.*,(s ...