内联元素和块元素

内联元素和块元素

①块级元素:默认100%撑满外层盒子的宽度(浏览器显示区域),独占一行,垂直排列,里能用行内元素,可以设置宽高

  |–>div 没有任何CSS属性(主要用在大框架)
  |–>p 自带上下外边据 (用在段落)
  |–>h1-h6 自带上下外边据,自带字体大小(用在栏目大标题)
  |–>ul li 自带上下外边据,li自带圆点 (用在列表,多个元素大小一致)
  |–>dl dt dd 用在带标题的列表上

②行内元素(内联元素):默认宽度只有本身所占的宽度,默认水平排列,不支持宽高 ,margin padding左右有效果 上下没有效果

  |–>a 超链接 自带标签颜色、鼠标放上颜色,点击时的颜色,点击过颜色,下划线
  |–> span
  |–>em、i(默认斜体)
  |–>strong,b(默认加粗)
  |–>u(默认下划线)

③行内块级元素:默认宽度只有本身所占的宽度,默认水平排列,支持宽高,受到父级text-align影响,可以居中

  |–>img 图片
  |–>input 输入框
  |–>select 下拉菜单
  |–>textarea 输入区域

IE6—————-BUG———————-
块级元素转化成行内块级元素 IE6不支持
行内元素转化成行内块级元素 IE6支持

块级元素加上position:absolute fixed(定位)或者浮动 宽度不是100% 是本身内容的宽度
行内元素加上position:absolute fixed(定位)或者浮动 就会变成块级元素

display:block; display:inline;和display:inline-block;

block:使用此属性后,元素会被显示为块级元素,元素会进行换行,默认宽度为撑满外层盒子的宽度(因为块元素霸道)。

inline:使用此属性后,元素会被显示为内联元素,元素则不会换行,默认宽度为内容的宽度。

inline-block:是使元素以块级元素的形式呈现在行内。意思就是说,让这个元素显示在同一行不换行,但是又可以控制高度和宽度,这相当于行内元素的增强。

  应用:
  1.display:inline-block把一个元素变成块级元素,但他的大小只是他本身内容的大小并不撑满外围盒子,如下图所示:
  内联元素与块级元素的关系所以在一道练习中出现下面的情况:

1
<li><a href="javascript:;">手写</a></li>

  若不把a变成块元素,则a上的背景不会撑满整个li。

  2.li是块元素,原本会换行,是竖着一列的布局,但改为inline-block并在父元素指定了width后,则会以块级元素的形式呈现在行内,不换行,但能控制高度宽度,这样就可以变成一行行排列的布局了。

css属性

  | ———-①盒子模型:width、height,padding、border、margin
   注意事项:padding 上下左右 全部相加 margin 上下取最大 左右相加 margin-top如想父级元素不受影响,父级元素要加overflow:hidden
  | ———-②-1 背景相关:background背景缩写:background-color,background-image,background-repeat,background-attachment,background-position
  | ———-②-2 文本样式:font-size文字大小/line-height行高、color文本颜色、text-align水平位置、font-family文字字体、letter-spcing文字间隔、text-decoration文本样式
  | ———-②-3 UL li:list-style列表样式
  | ———-②-4 A链接:a{}
    a:link - 普通的、未被访问的链接
    a:visited - 用户已访问的链接
    a:hover - 鼠标指针位于链接的上方
    a:active - 链接被点击的时刻
  | ———-③选择器 style 优先级最高 | ID选择器 #xxx id=”xxx” | 类选择器 .xxx class=”xxx” | 元素选择器 p | 后代选择器 .xxx .yyy
  | ———-④定位 float(浮动) position(定位):relative(相对)absolute(绝对)fixed(相对浏览器固定)

文章目录
  1. 1. 内联元素和块元素
    1. 1.1. ①块级元素:默认100%撑满外层盒子的宽度(浏览器显示区域),独占一行,垂直排列,里能用行内元素,可以设置宽高
    2. 1.2. ②行内元素(内联元素):默认宽度只有本身所占的宽度,默认水平排列,不支持宽高 ,margin padding左右有效果 上下没有效果
    3. 1.3. ③行内块级元素:默认宽度只有本身所占的宽度,默认水平排列,支持宽高,受到父级text-align影响,可以居中
  2. 2. display:block; display:inline;和display:inline-block;
    1. 2.1. block:使用此属性后,元素会被显示为块级元素,元素会进行换行,默认宽度为撑满外层盒子的宽度(因为块元素霸道)。
    2. 2.2. inline:使用此属性后,元素会被显示为内联元素,元素则不会换行,默认宽度为内容的宽度。
    3. 2.3. inline-block:是使元素以块级元素的形式呈现在行内。意思就是说,让这个元素显示在同一行不换行,但是又可以控制高度和宽度,这相当于行内元素的增强。
  3. 3. css属性
,