使用img标签和背景图片之间的区别

1.img

<img src="图片来源" alt="图片无法显示时显示图片说明性文字" style="设置样式属性" />

img标签虽然不是块状元素,但是可以设置宽高,占位,

img设置width后height会自适应匹配,如果设置height后width会自适应匹配,如果同时设置width,height,img图片可能会变形

2.background-image

它是css的一个样式,并不占位,可以结合background-size,background-repeat,background-position等属性来设置图片位置,大小等

它所在的元素必须指定height,否则背景图片显示不出来,可以不指定width,如果不指定width,它的宽度则继承父元素的宽度

3.它们之间的不同

  • img是html标签,占位,background-image是CSS样式,不占位
  • img是document对象可以操作(比如:从document对象中删除),background-image是不能操作的
  • 在网页加载过程中,img作为网页结构内容的一部分,会在加载结构的过程中加载,而background-image作为css样式的一部分,会在结构加载完成后开始加载。(如果你引入了一个很大的图片,在这个图片下载完成之前,img后面的内容都不会显示,而如果用css引入同样的图片,网页结构和内容加载完成之后,才开始加载背景图片,不会影响你浏览网页内容。)
  • img标签点击会选中或放大图片,background-image则不会

4.加载问题

背景图片会等到html结构加载完成才开始加载

img标签是网页结构的一部分,会在html结构加载的时候加载

在网页加载的过程中,背景图片会等到结构加载完成(网页的内容全部显示以后)才开始加载,而img标签

是网页结构(内容)的一部分会在html结构加载的过程中加载,换句话讲,网页会先加载img标签的内容,

再加载背景图片,如果你用引入了一个很大的图片,那么在这个图片下载完成之前,img后的内容都不会显

示。而如果用css来引入同样的图片,网页结构和内容加载完成之后,才开始加载背景图片,不会影响你浏

览网页内容。(即,img是内容性的,背景图是修饰性的)

5.加载失败显示问题

背景图片在加载失败或路径找不到时,不会显示图片标记,

img标签在加载失败或找不到路径时,会显示一个撕裂的小图标标记

161112_34Y6_3680343.png

6.数据图与非数据图

所谓数据图就是从后台获取的图片,一般就用img标签显示,其他的图片一般就作为背景图展示

7.何时用img,何时用背景图

1》使用img

  • 作为html结构内容的一部分
  • 展示从后台传过来的数据
  • 对图片进行缩放操作
  • 利于搜索引擎搜索时
  • 有明确的语义化要求
  • 图片作为页面的组成部分而不是修饰部分
  • 显示图片只给定宽或高且不能截断图片,并且保证图片宽高比

2》使用背景图

  • 不是html结构的一部分
  • 图像代替文本使用时
  • 缩短下载时间时
  • 为不同的屏幕分辨率展示不同的图像时(media查询时使用背景图)
  • 作为背景图片
  • 禁止用户保存图片(点击鼠标右键另存为操作)
  • 允许图片拉伸,平铺,截取等情况

另论:记录下background-size:100% 100% 与background-size:cover之间的区别

background-size:100% 100%;按容器 比例撑满,图片会变形

background-size:cover;把背景图片放大到适合元素容器的尺寸,图片比例不变

 

转载于:https://my.oschina.net/u/3680343/blog/1604073

### 回答1: `<img>` 标签是用于向 HTML 页面中添加图像的标签。以下是一些常用的 `<img>` 标签属性和相关的 CSS 属性: 1. `src` 属性:用于指定要在页面中显示的图像的 URL。 2. `alt` 属性:用于指定图像的替代文本,以便在图像无法加载时提供说明。 3. `title` 属性:用于指定当用户将鼠标悬停在图像上时显示的文本。 4. `width` 和 `height` 属性:用于指定图像的宽度和高度。这些属性还可以通过 CSS 设置。 5. `border` 属性:用于指定图像的边框宽度和样式。 6. `align` 属性:用于指定图像相对于周围文本的对齐方式。 7. `style` 属性:用于应用 CSS 样式到图像。可以使用样式属性来设置图像的宽度、高度、边框、外边距、内边距等属性。 例如,可以使用以下 CSS 样式为 `<img>` 标签添加外边距和边框: ```css img { margin: 10px; border: 1px solid black; } ``` ### 回答2: img标签属性有以下几个常用的css属性: 1. width:设置图片的宽度。可以使用具体数值(如px、em等)或者百分比。 2. height:设置图片的高度。同样可以使用具体数值或者百分比。 3. margin:设置图片与周围元素之间的间距。可以使用上、右、下、左四个方向分别设置具体数值,也可以统一设置。 4. padding:设置图片与其边框之间的距离。同样可以在四个方向上分别设置数值,或者统一设置。 5. display:用于控制图片的显示方式。常见的取值有"block"(作为块级元素显示),"inline"(作为内联元素显示)和"none"(不显示)。 6. float:设置图片的浮动方式。常见的取值有"left"(向左浮动)和"right"(向右浮动)。 7. border:设置图片的边框样式。可以设置边框宽度、颜色和样式。 8. background:设置图片的背景颜色或者背景图片。 9. position:设置图片的定位方式。常见的取值有"static"(默认定位)、"relative"(相对定位)、"absolute"(绝对定位)和"fixed"(固定定位)。 10. opacity:设置图片的透明度。取值范围为0(完全透明)到1(完全不透明)之间。 以上是img标签常用的css属性,通过这些属性可以对图片进行各种样式的设置和调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值