zoukankan      html  css  js  c++  java
  • display属性block,inline和inline-block的区别

    1. display:block
    1.1 block元素会独占一行,多个block元素会各自新起一行。默认情况下,block元素的宽度会自动填满其父元素宽度。
    1.2 block元素可以设置其width,height属性。块级元素即使设置了宽度,仍然是独占一行,但如果有margin且block元素本身的宽度不足父元素宽度的100%的话,该元素宽度+margin才是100%。
    1.3 block元素可以设置margin和padding属性。

    2. display:inline
    2.1 inline元素不会独占一行,多个相邻的行内元素会从左到右排列在同一行里,直到一行装不下了,才会新换一行,其宽度随元素的内容而变化。
    2.2 inline元素设置width,height属性无效。
    2.3 inline元素的margin和padding属性,水平方向的padding-left,padding-right,margin-left,margin-right都能产生边距效果;但竖直方向的padding-top,padding-bottom,margin-top,margin-bottom不会产生边距效果。

    3. display:inline-block
    简单来说就是将对象呈现为inline对象,但是对象的内容作为block对象呈现。之后的内联对象会被排列在同一行内。比如我们可以设置一个link(<a>)为inline-block属性,使其既具有block的宽度和高度特性又具有inline的同行特性。

    Note:
    1. <ul>,<li>都是块级元素,所以写navigation bar的时候要将<ul>定义为block,而将<li>定义为inline-block; <a>是行内元素,如果要设置占满背景容器,也需定义为block。
    2. 上述所有的“一行”都是指父元素(父容器)内的一行。

  • 相关阅读:
    Python 元组
    Python 字典
    Python 列表
    Python 数字(函数)
    Python 序列操作符与函数(字符串)
    JavaScript使用IEEE 标准进行二进制浮点运算,产生莫名错误
    网站用户体验要点(翻译理论)
    去掉checkbox边框的方法
    WPF数据模板样式选择器
    JS中年份问题的纠结!
  • 原文地址:https://www.cnblogs.com/binaryguy/p/13944167.html
Copyright © 2011-2022 走看看