温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CSS替换元素怎么使用

发布时间:2022-03-18 10:51:14 来源:亿速云 阅读:213 作者:iii 栏目:web开发

这篇文章主要介绍“CSS替换元素怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“CSS替换元素怎么使用”文章能帮助大家解决问题。

1. 替换元素

根据内容是否具有替换内容,我们也可以把元素分为替换元素和非替换元素

替换元素,顾名思义,就是内容可以被替代

<img src="./bg.png" />

这种通过某个属性呈现出内容的元素就是 替换元素

因此,<object>,<img>,<video>,<iframe>, 或者表单元素 <textarea>, <input>

1. 内容的外观不受页面上的 css 的影响,用专业的话讲就是在样式表现在 css 作用于之外,如何更改替换元素的外观?

需要类似 appearance 属性,或者浏览器自身暴露一些样式接口,例如::-ms-check{}可以更改高版本 IE 浏览器下单复选框的内部样式

2. 有自己的尺寸,在web中,很多替换元素在没有明确尺寸的设定,其默认尺寸是300px X 150px 如 <video>,<iframe>,<canvas>

也有很多元素替换元素为0像素,如 <img>图片

3. 在很多 css 属性上有自己的一套表现规则。比较具有代表性的就是 vertical-align 属性,对于替换元素和非替换元素,表现是不太一样的

4. 替换元素的默认 display 值

5. 替换元素的尺寸计算规则

1. 固有尺寸

指的是替换元素内容本身原本的尺寸,例如,图片,视频作为一个独立文件存在的时候,都有自己的宽度高度的

2. HTML 尺寸这个概念略微抽象

HTML 尺寸只能根据 HTML属性去改变

比如,img 的width,height 属性

input 的size属性, textarea的cols,rows属性

<img width="100" height="100">

<input size="20" type="file"/>

<textarea cols="20" rows="20"></textarea>

3. css 尺寸,特指可以通过 css 的width,height或者max-width/min-width和max-height/min-height设置尺寸,对应盒子尺寸中的 content-box

三者的优先级如下

css 尺寸>HTML 尺寸>固有尺寸

web 开发的时候,为了提高图片加载性能以及节省带宽费用,首屏加载以下的图片就会通过滚屏加载的异步方式,然后,这个即将被一部加载的图片为了布局稳健,体验良好,往往会使用一张透明的图片占位,例如:

<img src="transparent.png">

实际上,这个透明的展位图也是多余的资源,我们直接:

<img>

然后,配合以下的css样式可以实现一样的多余效果

img{visibility: hidden}

img[src]{visibility: visible}

注意,这里<img>直接没有 src 属性,再强调一遍,是直接没有,不是 src="", src=""在很多浏览器下,依然会有请求,而且请求的是当前页面的数据,当图片的 src 属性缺省的时候,图片不会有任何请求,是最高效率的实现 方式

css 世界中的替换元素的固有尺寸有一个很重要的特性,那就是“我们无法改变这个替换元素的固有尺寸”

div::before{

content: url(1.jpg);

display: block;

width: 200px;

height: 200px;

}

width和height属性都被直接无视了,这张图片原始尺寸大小256px X 192px

4. 替换元素和非替换元素的距离有多远

观点1:替换元素和非替换元素之间只隔一个 src 属性

平时使用的图片肯定都会使用 src 属性去掉,所以难免会思维定式,认为<img>等同于图片,实际上完全不是,如果把 src 属性去掉,

<img> 其实就是一个和 <span>类似的普通标签的内联样式,也就是成了一个非替换元素

观点2:替换元素和非替换元素之间只隔着了 一个 CSS content 属性

替换元素之所以为替换元素,就是因为其内容可替换,而这个内容就是 margin,border,padding,和content,这四个盒子中 的 content box

对应的 css 属性的 content,所以理论上讲,content属性决定是替换元素还是非替换元素

img{content: url(1.jpg)}

<img src="1.png">

关于“CSS替换元素怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

css
AI