博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
内联元素与块级元素及内外边距的影响
阅读量:5068 次
发布时间:2019-06-12

本文共 1043 字,大约阅读时间需要 3 分钟。

内联元素与块级元素

  • 块级元素(block):
    1. 新行开始;
    2. 高度,行高以及外边距和内边距都可控制;
    3. 宽度缺省是它的容器的100%
    4. 可以嵌套内联元素和其他块元素
    5. 常用的块级元素:div、h1~h6、dl、ul、ol 

       

  • 内联元素(inline):
    1. 和其他元素都在一行上;
    2. 宽度就是它的文字或图片的宽度,不可改变
    3. 内联元素只能容纳文本或者其他内联元素
    4. 常用的内联元素:a、span、img、input、lable、select、strong、textarea

 

其中内联元素的宽高及内外边距有一些需要主要注意的地方

显示效果:

而:

第一个第二个 第三个

显示效果:

=> <input><span>同为内联元素,为什么<input>可以设置宽高,内外边距,而<span>不能呢?

这是因为:

内联元素中含有两类:替换元素和非替换元素

  •  替换元素:

替换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容。

例如浏览器会根据<img>标签的src属性的值来读取图片信息并显示出来,而<img>只是指向一个图像文件,又如<input>标签的type属性来决定是显示输入框,还是单选按钮等。

 

  • 非替换元素:

指内容包含在文档中的元素。

例如,如果一个段落的文本内容都放在该元素本身之内,则这个段落就是一个非替换元素。

 

讨论内外边距对行内元素是否起作用,则要对行内替换元素和行内非替换元素分别讨论:

  1. 明确外边距可以应用到行内元素
  2. 向一个内联非替换元素应用外边距,对行高(line-height)没有任何影响
  3. 向一个内联非替换元素应用内边距上下边距时,对行高(line-height)没有任何影响,但当应用左右边距时,会对显示效果有影响,因此可以设置padding-left/right,margin-left/right
        1111    2222    3333

    效果:

 

             

 4.当一个内联非替换元素应用外边距,由于其外边距是透明而行高无影响,所以不显示视觉效果,但当上色时,由于内边距是非透明的,因此可以显示出效果

    1111    上下对行高均无影响,但padding可显色
除去行高区域外均不占文本流空间

效果:

 

5.对于一个内联替换元素而言,为其设置的内外边距等实际上是为其替换元素所设置的,会影响到替换元素的尺寸边距,从而影响到行高,因此可以设置margin和padding

 

 

 

转载于:https://www.cnblogs.com/alia/p/4733985.html

你可能感兴趣的文章
idea的maven项目无法引入junit
查看>>
jquery实现限制textarea输入字数
查看>>
thinkphp5 csv格式导入导出(多数据处理)
查看>>
fur168.com 改成5917电影
查看>>
PHP上传RAR压缩包并解压目录
查看>>
Codeforces 719B Anatoly and Cockroaches
查看>>
jenkins常用插件汇总
查看>>
c# 泛型+反射
查看>>
第九章 前后查找
查看>>
Python学习资料
查看>>
多服务器操作利器 - Polysh
查看>>
[LeetCode] Candy
查看>>
Jmeter学习系列----3 配置元件之计数器
查看>>
jQuery 自定义函数
查看>>
jq 杂
查看>>
jquery datagrid 后台获取datatable处理成正确的json字符串
查看>>
作业一
查看>>
AJAX
查看>>
ActiveMQ与spring整合
查看>>
web服务器
查看>>