zoukankan      html  css  js  c++  java
  • 块级元素与行内元素的区别

    块级元素与行内元素的区别

    块级元素和行内元素是布局最基本的两种元素,我们都知道常见的块级元素有div,p,form,ul,li等,行内元素有span,strong,em等,对于这两者的区别,我也只是简单的了解了一番,要正真的理解及掌握,还得在不断的练习中深入体会。下面是他们的区别:

    对于块级元素:

    • 他会独占一行,在默认情况下,其其宽度自动填满其父元素的宽度;
    • 块级元素可以设置width、height属性;
    • 块级元素即使设置了宽度也是独占一行,块级元素可以设置margin、padding属性;

    对于行内元素:

    • 行内元素不会独占一行,相邻的行内元素会排列在同一行里,直到行排不下,就自动换行,其宽度随内容而变化;
    • 行内元素的width、height属性则无效;
    • 行内元素的margin、padding属性很奇怪,水平方向的padding-left、padding-rigtht、margin-left、padding-right都会产生边距效果,但是竖直方向的padding-top、padding-bottom、margin-top、margin-bottom却不产生边距效果。

    块级元素和行内元素的css相关属性是:display,其中块级元素对应与display:block;行内元素对应于display:inline;我们可以通过这个属性来切换这两个元素。

    display:inline 的作用是设置对象做为行内元素显示,inline是内联对象的默认值(ps:内联对象就是不自动产生换行的元素,比如span) 而我们一般用的div是块级元素,默认display属性是block, 但将div的display设置为inline的话,则多个div可以像span一样显示在一行了。

    相关联的几点总结

    1. display:inline 对应不显示为 display:none
    2. display:block 对应不显示为 hidden
    说通俗点 样式为none的元素不占位置,而样式为hidden的元素虽然不显示但还是占地方。
    1. visibility:visible(元素可见,默认值)
    2. visibility:hidden(元素不可见,但仍然为其保留相应的空间)
    Visibility:none 和 Display:hidden 的区别是:
    1. display:none;
      使用该属性后,HTML元素(对象)的宽度、高度等各种属性值都将“丢失”;
    2. visibility:hidden;
      使用该属性后,HTML元素(对象)仅仅是在视觉上看不见(完全透明),而它所占据的空间位置仍然存在,也即是说它仍具有高度、宽度等属性值。
    如果想让某一段代码在前台不显示,最简单的方法是用css的display:none(某些情况下可以使用left:-100000px来达到同样效果。),这样,下边的内容就自动填补这个空隙。但是在一些特殊的情况下,我们只需要隐藏这个元素,但它的位置不能被占用了,那么,visibility:hidden就可以实现这个要求。
  • 相关阅读:
    ubuntu下安装maven
    159.Longest Substring with At Most Two Distinct Characters
    156.Binary Tree Upside Down
    155.Min Stack
    154.Find Minimum in Rotated Sorted Array II
    153.Find Minimum in Rotated Sorted Array
    152.Maximum Product Subarray
    151.Reverse Words in a String
    150.Evaluate Reverse Polish Notation
    149.Max Points on a Line
  • 原文地址:https://www.cnblogs.com/yehui-mmd/p/5957832.html
Copyright © 2011-2022 走看看