内联 Style 简写属性的发现

简介: # 内联 Style 简写属性的发现 ## 开始 平时在使用内联样式简写属性的时候,可能没有考虑到浏览器解析的问题。问题不大,简写的好处是代码量少,但最近发现了一个有意思的内联简写属性的问题。 以下问题仅在内联样式里会出现,如果是通过 style 标签或 css 文件引入则不会有这样的问题。 ## 例子 ### background 设置一个元素的背景色为白色,

内联 Style 简写属性的发现

开始

平时在使用内联样式简写属性的时候,可能没有考虑到浏览器解析的问题。问题不大,简写的好处是代码量少,但最近发现了一个有意思的内联简写属性的问题。

以下问题仅在内联样式里会出现,如果是通过 style 标签或 css 文件引入则不会有这样的问题。

例子

background

设置一个元素的背景色为白色,比如这么写:

<div style="background: #fff;"></div>

你可能以为浏览器会这样输出:

<div style="background-color: #fff;"></div>

一下少了 6 个字节,而浏览器的真真实解析情况是:

screenshot.png

潜在的问题是:将会默认设置一些其他的属性到样式里,而通过 CSS 又很难恢复这种默认属性

验证

我们来验证一下这个问题:

使用属性简写的浏览器呈现:

Snip20161217_4.png

而非简写的呈现:

Snip20161217_5.png

上面例子里的 HTML 代码:

<div style="background: #fff;"></div>

那么:

$0.style.backgroundImage === '' // => false

而如果例子修改为:

<div style="background-color: #fff;"></div>

那么:

$0.style.backgroundImage === '' // => true

font 验证

另外一个例子是 font 属性,也会有这个问题:

Snip20161217_10.png

这个时候:

$0.style.fontWeight === ''  // => false

Snip20161217_11.png

结果:

$0.style.fontWeight === ''  // => true

结论

能看到通过 style 获取元素属性时会返回非预期结果,所以使用 CSS 处理这类样式,最好是只设置你需要的属性,尽量不要简写,除非你明确知道这个操作的结果

目录
相关文章
|
11月前
|
SQL
使用sql转换身份证15位-18位
使用sql转换身份证15位-18位
539 1
|
9月前
|
调度 开发者 异构计算
冠军10万美金!AMD 2025 分布式推理算子优化挑战赛来了
冠军10万美金!AMD 2025 分布式推理算子优化挑战赛来了
625 13
|
9月前
|
传感器 算法 自动驾驶
【卡尔曼滤波跟踪】基于卡尔曼滤波的二维目标跟踪(Matlab实现)
【卡尔曼滤波跟踪】基于卡尔曼滤波的二维目标跟踪(Matlab实现)
373 0
|
9月前
|
传感器 机器学习/深度学习 算法
基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)
基于PID优化和矢量控制装置的四旋翼无人机(Matlab&Simulink实现)
576 0
|
9月前
|
人工智能 并行计算 算法
三相PWM整流器有限集模型预测电流控制Simulink仿真模型
三相PWM整流器有限集模型预测电流控制Simulink仿真模型
271 0
|
SQL 分布式计算 DataWorks
使用DataWorks PyODPS节点调用XGBoost算法
本文介绍如何在DataWorks中通过PyODPS3节点调用XGBoost算法完成模型训练与测试,并实现周期离线调度。主要内容包括:1) 使用ODPS SQL构建数据集;2) 创建PyODPS3节点进行数据处理与模型训练;3) 构建支持XGBoost的自定义镜像;4) 测试运行并选择对应镜像。适用于需要集成机器学习算法到大数据工作流的用户。
527 24
|
存储 人工智能 Unix
Linux常见指令汇总
最常见的就是 ll (为ls -l的省略)
425 0
|
开发工具 虚拟化 git
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
|
人工智能 自然语言处理 DataWorks
DataWorks X DeepSeek : 用AI实现数据开发治理!
阿里云DataWorks正式接入DeepSeek-R1系列模型,用户可通过DataWorks Copilot智能助手,以自然语言交互完成代码操作,实现数据开发、分析与治理全流程。DataWorks内置阿里巴巴16年大数据建设方法论,支持多种大数据引擎和AI计算服务,助力“Data+AI”全生命周期管理。开通DataWorks后即可免费体验DataWorks Copilot。
|
分布式计算 NoSQL 大数据
阿里云大数据ACA及ACP复习题(11~20)
本人备考阿里云大数据考试时自行收集准备的题库,纯手工整理的,能够覆盖到今年7月份,应该是目前最新的,发成文章希望大家能一起学习,不要花冤枉钱去买题库背了,也希望大家能够顺利通关ACA和ACP考试。