今天主要对inline元素做一下归纳总结。

inline是display中的默认属性值,就是将元素设置为内联元素,设置完后元素前后都没有换行符,因此内联元素与前后的元素在一行上。

关于内联元素的特点归纳如下:

1、内联元素中只能容纳其他内联元素或文本。内联元素的高度和宽度由元素中的内容所决定:当元素中存在文本时,其高度由文本的字体大小所决定,宽度由文本内容的长短决定。

当然,关于高度,行高line-height也可以设置内联元素的高度

除此之外,如果仅仅对内联元素设置高度height和width,是不起作用的。

代码如下:

<head><style>div{width: 100px;height: 100px;background-color: red;      border: 1px solid black;display:inline;}
</style>
</head><body><div>12345</div></body>

最终在界面上显示的效果如下图1所示:

图1

上述代码中可以看到,我们对div设置了宽度width和高度height,但其呈现在界面上的宽度最终由内容长度决定,高度由其内部的内容“123”决定。

如果对line-height进行更改:

<head><style>div{width: 100px;height: 100px;background-color: red;      line-height: 50px;border: 1px solid black;display:inline;}
</style>
</head><body><div>12345</div></body>

那么加入line-height后的效果如下图2所示:

图2

由div距离页面顶部的空白可以看出,内联元素div的高度的确更改了。

2、margin对于内联元素的影响应分为替换元素(replaced element)和非替换元素(non-replaced element)来讨论。

在HTML中,替换元素:作为其他内容占位符的一个元素,比如img和input;

非替换元素:内容包含在文档中的元素,比如div等,内容都放在本身之中。

1)左右外边距margin-left和margin-right不管是否为替换元素,都是有效的;

2)对于行内非替换元素(例如div)来说,margin不会改变其行高line-height。因此,margin不能改变内联元素的margin-top和margin-bottom:

代码如下:

<head><style>#div1{background-color: red;      border: 1px solid black;display: inline; margin: 100px;}#div2{width: 100px;height: 100px;background-color: green;}
</style>
</head><body><div id="div1">12345</div><div id="div2"></div></body>

设置margin后在页面上的展示效果如下图3所示:

图3

由上图可以看到,margin-left已经起到作用,以下方长宽皆为100px的正方形div为参照物,内联元素div1距离左边距为100px,但是上下的外边距均未发生改变。

3)对于行内替换元素来说,由于margin外边距可以改变其行高line-height,所以margin-top和margin-bottom都有效。此处就不做代码演示了,大家可以使用input或者img元素测试一下。

3、padding对于内联元素的影响也应分为替换元素和非替换元素来讨论。

1)左右内边距padding-left和padding-right,不管元素是否为替换元素,都是有效的;

2)对于非替换元素(例如div)来讲,上下内边距padding-top和padding-bottom是有效可见的,但是需要注意,上下内边距的值不会改变元素的line-height,也就是说,如果该元素外部还有一个父级,padding-top和padding-bottom的增减是可见的,但是不会撑大父级div。

代码如下:

加入内边距padding之前:

<style>#div1{background-color: red;      border: 1px solid black;display: inline;}div{width: 200px;height: 200px;background-color: green;border: 1px solid black;}
</style><body><div></div><div><div id="div1">12345</div></div><div></div></body>

其效果如下图4所示:

图4

如果在上述代码块中,在div1的样式中插入:padding:60px;   则效果变成如下图5:

图5

通过上图5可以看到,padding值是可见的,上下左右均增加了60px,但是并没有撑大父级div的大小。

3)对于替换元素来讲,上下内边距padding-top和padding-bottom是有效可见的,且会撑大父级,此处就不做代码演示了。(在父级没有设置样式的情况下。如果父级元素指定了宽和高,那么无论如果都不会撑大父级元素)

转载于:https://www.cnblogs.com/May-study/p/6164150.html

浅谈内联元素inline相关推荐

  1. 常见的内联元素(inline)和块级元素(block)

    1.内联元素(inline): a – 锚点  abbr – 缩写  b – 粗体(不推荐)  big – 大字体  br – 换行  cite – 引用  code – 计算机代码(在引用源码的时候 ...

  2. 浅谈块级元素和内联元素的嵌套规则

    1. 替换和不可替换元素 从元素本身的特点来讲,可以分为替换和不可替换元素. a) 替换元素 替换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容. 例如浏览器会根据<img> ...

  3. css 内联元素、块级元素、内联块级元素

    对于display我想很多人都不陌生,然而在谈到内联元素,行内元素等词,还是会有人脑袋瓜子充满了疑问???我曾经自以为已经了解并懂得如何使用display,在学习vertical-align及替换元素 ...

  4. Html 内联元素、外联元素 和 可变元素

    块元素(block element)一般是其他元素的容器元素 块元素一般都从新行开始,它可以容纳内联元素和其他块元素,常见块元素是段落标签'P"."form"这个块元素比 ...

  5. 内联元素与块级元素及内外边距的影响

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

  6. 块级元素与行级元素(内联元素)

    内联元素(inline element)一般都是基于语义级(semantic)的基本元素.内联元素只能容纳文本或者其他内联元素,常见内联元素"a".块元素(block elemen ...

  7. CSS的块级元素和内联元素,以及float

    说明:之前有一点搞错了,就是float其实是浮动起来,其它元素会位于它的底层. 最近在系统地学习HTML5,感觉补上了好多缺失的知识. 例如: 锚点定位其实可以通过 id 来实现: CSS 使用 !i ...

  8. CSS之排列系列--块级元素、内联元素、内联块元素--区别/详解

    原文网址:CSS之排列系列--块级元素.内联元素.内联块元素--区别/详解_IT利刃出鞘的博客-CSDN博客 简介 本文介绍CSS的块级元素(block).内联元素(inline)和内联块元素(inl ...

  9. html中块级元素并列,HTML的块级元素和内联元素

    一.任何不是块级元素的可见元素都是内联元素## 块元素(block element) * address - 地址 * blockquote - 块引用 * center - 举中对齐块 * dir ...

最新文章

  1. 云原生背景运维转型之 SRE 实践
  2. 摆脱“空”检查的盛宴:使用JSON Patch正确执行PATCH
  3. 腾讯,字节,阿里,小米,京东大厂Offer拿到手软!绝对干货
  4. Linux安装中文总是提示失败,AnyBackup-Linux 客户端安装失败,提示错误信息:Self IP Address is invalid...
  5. Perl文件处理示例——批量添加Copyright版权信息
  6. 几种距离公式的总结思考
  7. .NET数据访问是否采用ORM(自译)
  8. cssci核心期刊(cssci核心期刊目录)
  9. GJB 软件测试计划(模板)
  10. xise菜刀千万不要随便下载!(警惕!)
  11. java中compar_1.java中Comparor与Comparable的问题
  12. Java:获取两个区间内 为周几或星期符合 的所有日期,指定日期 使用周数计算出相对应的工作日
  13. c++面试常见问题总结
  14. 2021人工智能状况分析报告
  15. 与计算机相关的word的模板,将 Word 文档保存为模板
  16. python房价分析论文_用Python研究了三千套房子,告诉你究竟是什么抬高了房价?...
  17. iOS10、11自定义左滑菜单项背景图片
  18. Pytorch实战 | 第P1周:实现mnist手写数字识别
  19. 【Ant Design】下拉列表Select 、日期选择框DatePicker等跟随滚动条上下移动解决方案
  20. 环回接口是做什么的?

热门文章

  1. Delicious Apples
  2. ci mysql 缓存_CI框架缓存的实现原理
  3. centos7 docker安装_教你如何在 CentOS 7 下 yum 方式安装 Docker 环境
  4. 试题10 最大子阵(枚举)
  5. 算法时间复杂度分析专题一(帮助快速解题)
  6. C#基础16:事件与观察者模式
  7. bzoj 1637: [Usaco2007 Mar]Balanced Lineup
  8. Echarts数据可视化dataZoom,开发全解+完美注释
  9. 简单稳压电源的瞬态分析
  10. 自动空调是嵌入计算机,自动空调很鸡肋?其实是你不会用而已