transform: scale(0.5); /* 将元素的大小缩小为原来的50% */ transform: scale(1.5); /* 将元素的大小放大为原来的150% */
当一个元素使用了scale属性时,其对应的其他属性也会发生变化,比如其宽高、边框、内边距等也会按照相应的比例进行变化。而且如果元素中包含有图片或其他的子元素,他们也会被一起缩放。
.box{ background-color: #f2f2f2; border: 1px solid #ddd; padding: 20px; transform: scale(0.5); }
在上例中,box这个元素的宽高和内边距都被缩小了50%,其边框也被压缩了。但如果其中包含有图片,图片的宽高也会被缩小一半。
需要注意的是,使用scale属性会对元素本身的尺寸进行修改,并不会改变其占用的空间大小。比如,假设一个元素设置了scale(2),占用的像素大小为200px,那么它实际显示出来时占用的像素大小仍然是200px。但是它显示的内容将以两倍大小呈现。
.box{ width: 100px; height: 100px; background-color: #f2f2f2; border: 1px solid #ddd; transform: scale(2); }
上例中,元素占用的空间大小为100px * 100px,但如果使用transform将其缩放两倍,则元素的尺寸为200px * 200px,内容被拉伸了。