Css 简明教程
CSS - Zoom
CSS 的 zoom 属性可用于控制元素的放大级别。
The zoom property of CSS is useful in controlling the magnification level of elements.
zoom 是 CSS 的非标准属性,建议对相同输出使用 transform: scale() 函数。
zoom is a non-standard property of CSS and it is advisable to use the transform: scale() function for the same output.
Possible Values
-
normal: Specifies that the element should be rendered at its normal size.
-
reset: Specifies that the element should not de(magnify), unless the user applies non-pinch-based zooming. Not recommended, instead use unset value.
-
<percentage>: Any percentage value called zoom factor. Value equal to 100% is normal. Value more than 100% means element should zoom-in. Value less than 100% means element should zoom-out.
-
<number>: Any number value that corresponds to a percentage value. For example: 1.0 = 100% = normal. Value equal to 1.0 is normal. Value more than 1.0 means element should zoom-in. Value less than 1.0 means element should zoom-out.
CSS zoom - normal Value
这是一个示例:
Here is an example:
<html>
<style>
p.normal {
zoom: normal;
}
p.percent {
zoom: 170%;
}
p.number {
zoom: 4;
}
p.unset {
zoom: unset;
}
</style>
<head>
</head>
<body>
<p class="normal">Normal size</p>
<p class="percent">Zoom in percentage</p>
<p class="number">Zoom in number</p>
<p class="unset">Zoom settings reverted.</p>
</body>
</html>
CSS zoom - <percentage> Value
以下提供另一个示例:
Here is another example:
<html>
<head>
<style>
div.box {
height: 50px;
width: 50px;
display: inline-block;
padding: 5px;
border: 1px solid black;
}
div#m {
background-color: orange;
zoom: 200%;
}
div#n {
background-color: lavender;
zoom: 1.5;
}
div#o {
background-color: palevioletred;
zoom: normal;
}
</style>
</head>
<body>
<div id="m" class="box"></div>
<div id="n" class="box"></div>
<div id="o" class="box"></div>
</body>
</html>
CSS zoom - With number Value
这是一个示例,其中在经过时会放大小号 h1 元素:
Here is an example, where the h1 element gets zoomed on hover:
<html>
<head>
<style>
p {
border: 1px solid red;
}
p.percent {
zoom: 170%;
}
p.number {
zoom: 4;
}
h1:hover {
zoom: 250%;
text-decoration-line: underline;
}
</style>
</head>
<body>
<h1>Hover to Zoom</h1>
<p class="percent">Zoom in percentage</p>
<p class="number">Zoom in number</p>
</body>
</html>
CSS zoom - With Animation
这是一个示例,其中在经过时会添加动画以及缩放:
Here is an example, where the animation is added on hover along with zoom:
<html>
<head>
<style>
div.box {
width: 25px;
height: 25px;
vertical-align: middle;
display: inline-block;
transition: transform .5s;
padding: 10px;
}
div#a {
background-color: rgb(58, 220, 22);
zoom: normal;
}
div#b {
background-color: rgb(239, 86, 137);
zoom: 200%;
}
div#c {
background-color: rgb(223, 217, 44);
zoom: 2.9;
}
div.box:hover {
transform: scale(1.5);
}
</style>
</head>
<body>
<h1>Animation added on hover</h1>
<div id="a" class="box"></div>
<div id="b" class="box"></div>
<div id="c" class="box"></div>
</body>
</html>