参考链接
画一条 0.5 px 的边
CSS
.hr {
width: 300px;
background-color: #000;
}
.hr.half-px {
height: 0.5px;
}
.hr.one-px {
height: 1px;
}
/* scale */
.hr.scale-half {
height: 1px;
transform: scaleY(0.5);
transform-origin: 50% 10%;
}
/* linear-gradient */
.hr.gradient {
height: 1px;
background: linear-gradient(0deg, #fff, #000);
}
/* box-shadow */
.hr.boxshadow {
height: 1px;
background: none;
box-shadow: 0 0.5px 0 #000;
}
/* svg */
.hr.svg {
height: 1px;
/*background: url("data:image/svg+xml;utf-8,<svg xmlns='http://www.w3.org/2000/svg' width='100%' height='1px'><line x1='0' y1='0' x2='100%' y2='0' stroke='#000'></line></svg>");*/
background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzFweCc+PGxpbmUgeDE9JzAnIHkxPScwJyB4Mj0nMTAwJScgeTI9JzAnIHN0cm9rZT0nIzAwMCc+PC9saW5lPjwvc3ZnPg==");
}
HTML
<p>svg</p>
<div class="hr svg"></div>
<p>box-shadow: 0 0.5px 0 #000</p>
<div class="hr boxshadow"></div>
<p>linear-gradient(0deg, #fff, #000)</p>
<div class="hr gradient"></div>
<p>1px + scaleY(0.5)</p>
<div class="hr scale-half"></div>
<p>0.5px</p>
<div class="hr half-px"></div>
<p>1px</p>
<div class="hr one-px"></div>
window.devicePixelRatio
是设备上物理像素和设备独立像素(device-independent pixels (dips))的比例。
initial-scale
缩放值越大,当前 viewport
的宽度就会越小,反之亦然。实际改变的是 CSS 像素即设备独立像素的大小。