React为何将数字类型的尺寸值默认识别为像素单位?
React样式数字值默认使用px单位的原因
在你提供的React代码里,当给style属性的width、height这类CSS属性传入数字值时,React会自动给这个数字加上px单位,这是React内置的设计规则:
- 针对长度类CSS属性(比如width、height、margin、padding、font-size等),React默认会把数字值解析为像素单位——这类属性在前端开发中使用像素的场景占比最高,自动补全px能减少开发者重复编写单位的工作量。
- 如果需要使用其他单位(比如百分比%、厘米cm、相对单位em等),必须把值写成字符串形式,比如
width: '50%'、height: '10cm'。 - 对于不需要单位的CSS属性(比如opacity、z-index),传入数字时不会添加任何单位,直接生效。
比如代码里的user.imageSize是数字90,React会自动将其转换为90px,最终作用在img元素的width和height样式上。
内容的提问来源于stack exchange,提问作者FlatAssembler
相关产品推荐
相关产品推荐

