【CSS】1 像素问题
创始人
2024-12-02 02:35:42
0

CSS 中的 1 像素问题指的是在⾼分辨率屏幕上显示的 1 像素边框或者细线在实际显示时会⽐ 1 个物理像素更宽或更粗,从⽽导致边框或者细线看上去⽐预期的更粗或者更宽。

造成这个问题的原因是由于⾼分辨率屏幕的像素密度⽐传统的屏幕要⾼,所以在屏幕上显示的⼀个 CSS 像素对应的物理像素个数也会相应地增多,当使⽤ CSS 中的 1px 来设置边框或者细线时,实际上渲染出来的线条在屏幕上会被拆分为多个物理像素,从⽽导致看上去更粗。

  1. 使⽤图⽚代替边框或细线,这种⽅法能够保证显示效果的⼀致性,但是需要制作多张图⽚,增加了⻚⾯加载的开销。
  2. 使⽤ scale 进⾏缩放,使⽤ transform 缩放 0.5 像素⼤⼩的边框,以达到渲染 1 像素的效果。例如:
.border { 	 position: relative; 	 border: 1px solid #000; } .border:after { 	 content: ""; 	 position: absolute; 	 top: -1px; 	 left: -1px; 	 right: -1px; 	 bottom: -1px; 	 border: 1px solid #000; 	 transform: scale(0.5); } 
  1. 使⽤ border-image,border-image 可以实现将⼀张图⽚作为边框样式,图⽚会⾃动拉伸或者重复以填充边框。这种⽅法需要制作⼀张边框的图⽚,但是可以通过 CSS 控制图⽚的填充⽅式和边框样式,⽐较灵活。例如:
 .border {     border: 1px solid transparent;     border-image: url(border.png) 1 1 stretch;  } 
  1. 使⽤ CSS3 的 box-shadow,可以⽤ box-shadow 属性来模拟边框。例如:
.border {   box-shadow: 0 0 0 1px #000;  } 

使⽤ viewport,在 head 中添加如下代码可以解决 1px 问题:

 

相关内容

热门资讯

透视妙招!hhpoker有后台... 透视妙招!hhpoker有后台操控吗(透视)开挂透视app(哔哩哔哩)hhpoker有后台操控吗脚本...
透视经验!fishpoker透... 透视经验!fishpoker透视底牌(透视)开挂透视神器(哔哩哔哩)小薇(辅助器软件下载)致您一封信...
透视讲义!智星菠萝透视(透视)... 透视讲义!智星菠萝透视(透视)开挂脚本神器(哔哩哔哩)1、许多玩家不知道智星菠萝透视辅助怎么退出观战...
透视阶段!pokemmo辅助官... 透视阶段!pokemmo辅助官网(透视)开挂脚本软件(哔哩哔哩)1、用户打开应用后不用登录就可以直接...
透视妙计!wpk辅助购买(透视... 透视妙计!wpk辅助购买(透视)开挂透视安装(哔哩哔哩)1)wpk辅助购买免费钻石:进一步探索wpk...
透视模块!werplan透视挂... 透视模块!werplan透视挂(透视)开挂脚本工具(哔哩哔哩)1、用户打开应用后不用登录就可以直接使...
透视绝活!wepoker软件安... 透视绝活!wepoker软件安装包(透视)开挂透视软件(哔哩哔哩)1、wepoker软件安装包辅助器...
透视方式!epoker透视(透... 透视方式!epoker透视(透视)开挂脚本app(哔哩哔哩)1、进入游戏-大厅左侧-新手福利-激活码...
透视绝活儿!we-poker靠... 透视绝活儿!we-poker靠谱吗(透视)开挂透视辅助器(哔哩哔哩)1、让任何用户在无需we-pok...
透视攻略!hhpoker必备开... 透视攻略!hhpoker必备开挂(透视)开挂脚本安装(哔哩哔哩)暗藏猫腻,小编详细说明hhpoker...