
盒子里的绝对定位元素发生预期外的像素偏移?
在自定义输入框选择框样式时,可能会遇到这样的问题:在不同的分辨率下,代码设置居中的选择框小元素在不同的分辨率下仍不居中。
问题原因
造成此问题的关键在于像素单位 (px) 在不同分辨率下可能产生移位。
解决方法
为了解决此问题,请将所有像素单位替换为相对单位,例如:
将宽度和高度的“15px”替换为“1rem”将边框的“1px”替换为“0.1rem”将小元素的大小(“10px”)替换为“0.6rem”将小元素的边距(“-5px”)替换为“-0.3rem”
修改后的代码
修改后的代码如下:
.clause-content { display: flex; flex-direction: row; align-items: start; } .clause-input { display: inline-block; vertical-align: middle; width: 1rem; height: 1rem; cursor: pointer; position: relative; background-color: #fff; margin-right: 0.8rem; border: 0.1rem solid rgba(237, 30, 14, 0.15); } .clause-input input { opacity: 0; } .clause-input input:checked + i { width: 0.6rem; height: 0.6rem; position: absolute; left: 50%; top: 50%; margin-left: -0.3rem; margin-top: -0.3rem; /* transform: translate(-50%, -50%); */ background-color: #ed1c24; }
通过这些改动,小元素的定位将独立于屏幕分辨率,始终居中对齐。
以上就是如何解决盒子里的绝对定位元素在不同分辨率下发生像素偏移?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1559075.html
微信扫一扫
支付宝扫一扫