`

display:inline、block、inline-block 的区别有哪些

    博客分类:
  • css
阅读更多

inline、block、inline-block 的区别

 

 

1、display:block就是将元素显示为块级元素

 

  block元素的特点是:
  总是在新行上开始;
  高度,行高以及顶和底边距都可控制;
  宽度缺省是它的容器的100%,除非设定一个宽度
  <div>, <p>, <h1>, <form>, <ul> 和 <li>是块元素的例子。

 

 

2、display:inline就是将元素显示为行内元素

 

  inline元素的特点是:
  和其他元素都在一行上;
  高,行高及顶和底边距不可改变;
  宽度就是它的文字或图片的宽度,不可改变。
  <span>, <a>, <label>, <input>, <img>, <strong> 和<em>是inline元素的例子。

  inline和block可以控制一个元素的行宽高等特性,需要切换的情况如下:

  让一个inline元素从新行开始;
  让块元素和其他元素保持在一行上;
  控制inline元素的宽度(对导航条特别有用);
  控制inline元素的高度;
  无须设定宽度即可为一个块元素设定与文字同宽的背景色。

 

 

3、display:inline-block

 

将对象呈递为内联对象,但是对象的内容作为块对象呈递旁边的内联对象会被呈递在同一行内,允许空格。inline-block将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内,允许空格(准确地说,应用此特性的元素呈现为内联对象,周围元素保持在同一行,但可以设置宽度和高度地块元素的属性),但是该元素具有块元素的特性,可以设置其高度,宽度等属性。在同一行内有不同高度内容的元素时,通常要设置对齐方式如vertical-align: top;来使元素顶部对齐。

 

 

 

兼容性

 

  并不是所有浏览器都支持此属性,目前支持的浏览器有:Opera、Safari在IE中对内联元素使用display:inline-block,IE是不识别的,但使用display:inline-block在IE下会触发layout,从而使内联元素拥有了display:inline-block属性的表症。从上面的这个分析,也不难理解为什么IE下,对块元素设置display:inline-block属性无法实现inline-block的效果。这时块元素仅仅是被display:inline-block触发了layout,而它本就是行布局,所以触发后,块元素依然还是行布局,而不会如Opera中块元素呈递为内联对象。

 

 

 

参考资料: display:inline、block、inline-block 的区别    http://www.studyofnet.com/news/334.html

 

 

 

分享到:
评论

相关推荐

    display:inline、block、inline-block的区别(转的)

    本篇文章将深入探讨`display:inline`、`display:block`以及`display:inline-block`这三种主要的显示模式之间的区别,帮助你更好地理解它们在实际开发中的应用。 首先,我们来看`display:inline`。这种模式使得元素...

    display:inline-block的实际应用

    然而,`display:inline-block` 也有一些需要注意的问题: 1. **空格影响**:内联元素间的空白字符(如空格、换行)会导致元素间产生间距,这在某些布局中可能不是预期的效果。可以通过删除这些空白字符或使用负...

    有关display:inline-block在FF出现空白的解决方案

    在网页布局设计中,`display:inline-block` 是一个非常常用且强大的CSS属性,它允许元素在保持块级元素特性的同时,像内联元素一样并排显示。然而,在不同浏览器之间,尤其是在Firefox(FF)上,可能会遇到一些显示...

    CSS属性display:inline-block用法深入理解

    `display:inline-block`是其中一种特殊的值,它结合了`inline`和`block`两种显示特性的优点,使得元素既能像内联元素一样并排显示,又能像块级元素一样控制内容的宽度和高度。下面我们将深入探讨`display:inline-...

    关于css display: inline block inline-block的区别分析

    `display: inline`、`display: block` 和 `display: inline-block` 是三种常见的值,它们各自具有不同的行为和用途。 1. **display: inline** - `display: inline` 使得元素以行内元素的方式呈现,这意味着它们会...

    display:inline-block的原理分析

    在 IE 中实现 `display:inline-block` 效果有两种常见方法: 1. 首先设置 `display:inline-block` 触发 layout,然后在另一个声明中设置 `display:inline`,这样元素会呈现为内联对象。需要注意的是,这两个声明...

    display:inline-block的使用示例

    在网页布局设计中,`display:inline-block` 是一个非常实用的CSS属性,它允许元素以行内元素的方式显示,但同时保留着块级元素的特性,如设置宽度、高度以及垂直对齐等。这个属性在处理多列布局,尤其是需要在有限的...

    float元素浮动后高度不一致导致错位的解决办方法

    浮动子元素定义需要的font-size, 再定义display:inline-block;vertical-align:top; 复制代码代码如下: ul{ margin:0; padding:0; list-style-type:none; font-size:0; } ul li{ width:160px; display:inline-...

    CSS之display引用运用

    ### CSS之display引用运用 在CSS布局中,`display`属性是至关重要的,它决定了元素如何显示以及与...希望本文能为读者提供有价值的参考,让读者能够在实际项目中更加熟练地运用`display:inline-block`进行布局设计。

    CSS样式文件格式化工具

    display:inline-block; text-align:left; } 格式化为: .UserLogin_7{width:213px;height:45px;clear:both;margin-left:0px;margin-top:0px;margin-bottom:0px;display:inline-block;text-align:left;}

    让IE6/IE7支持display:inline-block属性的两种方法

    在Web开发中,`display:inline-block`是一种非常实用的CSS属性,它允许元素拥有块级元素的特性(如自定义宽度、高度),同时保持内联元素的排列方式,即允许元素在同一行显示。然而,IE6和IE7这两个较老的浏览器对`...

    深入display:inline-block

    `display:inline-block`是CSS布局中的一个重要属性,用于将元素表现得既像内联元素那样在一行内排列,又能像块级元素那样控制其内部内容的布局。这种特性使得`inline-block`在网页布局中非常实用,特别是在创建响应...

    display:inline | block |inline-block

    display:block就是将元素显示为块级元素. block元素的特点是:总是在新行上开始;高度,行高以及顶和底边距都可控制;宽度缺省是它的容器的100%,除非设定一个宽度, , , &lt;form&gt;, &lt;ul&gt; 和 是块元素的例子。

    inline-block 前世今生1

    【描述】:“同时我们知道 IE6、7 中 display:inline-block 是可以触发 hasLayout 的,触发了 hasLayout的元素表现出来的特征就是一” 【标签】:“软件/插件” 【正文】: display:inline-block 属性是CSS布局中...

    css解决display:inline-block;产生的缝隙(间隙)的方法

    在CSS布局中,`display: inline-block` 是一个常用的属性,它允许元素以行内元素的方式排列,同时具有块级元素的部分特性,如指定宽度和高度。然而,使用`display: inline-block` 时,元素之间往往会出现一些...

Global site tag (gtag.js) - Google Analytics