html - Transform 属性中使用的无单位数是如何计算的?
问题描述
* {
margin:0;
padding:0;
}
.container {
padding:5px;
background-color: lightblue;
font-size:20px;
border: 1px solid;
height:200px;
}
.inside {
position:relative;
top:50px;
display:inline-block;
background: lightcoral;
transform: scaleY(2) scaleX(1);
}
<div class="container">
<p class="inside">This is a normal text.</p>
</div>
无单位数是如何计算的?大概它与字体大小有关,但显然没有乘以它。对于行高,我知道数字乘以字体大小,但对于变换属性,情况似乎并非如此。那么,它是如何计算的!?
解决方案
transform: scaleY(x)
x
表示:“在 Y 轴上放大倍数”
作为对此定义的经验反思,您可以检查以下代码:
function insertHeightAsContent(elementId) {
const element = document.getElementById(elementId);
const height = element.getBoundingClientRect().height;
element.innerHTML = `My height is ${height}px`;
}
insertHeightAsContent('original');
insertHeightAsContent('scale1-5');
insertHeightAsContent('scale2');
insertHeightAsContent('scale3');
div {
display: inline-block;
width: 100px;
height: 100px;
text-align: center;
background-color: tomato;
}
#original { margin-top: 100px }
#scale1-5 { transform: scaleY(1.5) }
#scale2 { transform: scaleY(2) }
#scale3 { transform: scaleY(3) }
<div id="original"></div>
<div id="scale1-5"></div>
<div id="scale2"></div>
<div id="scale3"></div>
推荐阅读
- html - Div height not filling the screen size when adding images inside it
- .net - 在控制器中安装 Swagger
- sql - 如何将一个 SQL 列显示为两个单独的列
- javascript - 无法读取 null 的属性 addEventListener
- flutter - Map in Flutter for Web - 将数据从 JS 发送到 Flutter for Web
- django - Django make dataframe available in view but read it just ONCE
- c - 尽管使用 calloc(),为什么我得到垃圾值?
- appium - 如何使用公共 IP 在远程 Appium 服务器上运行自动化脚本?
- flask - 如何实现烧瓶 restplus 授权
- sql - 如何在 oracle 中打印光标值?