gpt4 book ai didi

html - 边界半径不像预期的那样圆

转载 作者:行者123 更新时间:2023-11-28 00:55:56 25 4
gpt4 key购买 nike

codepen

在上面的例子中,我尝试了开关盒样式,我也尝试了 em 值,当我根据他们的 parent 写了 16px 的字体大小时,根据 veiwport 字体大小会发生变化,而改变开关盒圆圈并不完美,对于特定的字体大小是合适的(eg:parent font-size 20px,22px)

这是代码

.parent {
font-size: 16px;
text-align: center;
margin-top: 10px
}

.BP_swtchbox {
display: inline-block;
font-size: 1em
}

.BP_Swtch {
cursor: pointer;
background: #d7d9dd;
border-radius: 0.313em;
height: 0.625em;
width: 1.500em;
display: inline-block;
position: relative;
transition: .4s;
-ms-transition: .4s;
-moz-transition: .4s;
-webkit-transition: .4s
}

.BP_swtchbox input {
display: none
}

.BP_Swtbx_lb {
background: #fff;
border-radius: 50%;
box-shadow: 0 1px 4px 0 #777;
height: 0.875em;
width: 0.875em;
position: absolute;
top: 0;
left: 0;
transition: .3s cubic-bezier(.4, 1.3, .65, 1.1);
-ms-transition: .3s cubic-bezier(.4, 1.3, .65, 1.1);
-moz-transition: .3s cubic-bezier(.4, 1.3, .65, 1.1);
-webkit-transition: .3s cubic-bezier(.4, 1.3, .65, 1.1);
bottom: 0;
margin: auto
}

.BP_swtchbox input:checked+.BP_Swtch {
box-shadow: 0 0 0 0.375em #58b14c inset
}

.BP_swtchbox input:checked+.BP_Swtch .BP_Swtbx_lb {
left: calc(100% - 0.875em);
left: -ms-calc(100% - 0.875em);
left: -moz-calc(100% - 0.875em);
left: -webkit-calc(100% - 0.875em)
}
<div class="parent">
<label class="BP_swtchbox" for="BPSwitch">
<input type="checkbox" id="BPSwitch" class="hide">
<label class="BP_Swtch" for="BPSwitch">
<span class="BP_Swtbx_lb"></span>
</label>
</label>
</div>

这是父类字体大小为 20px 的屏幕截图......用于开关图标

enter image description here

为此要做什么....

最佳答案

这很有趣。看来当.parent有一个 font-size20px , widthheight.BP_Swtbx_lb (均表示为 0.875em )计算为 17.5 像素。由于像素不能是小数,因此它们会四舍五入,但这里奇怪的是高度四舍五入为 17 而宽度四舍五入为 18。

.parent有一个 font-size22px ,它似乎是完全相反的,height被围捕和width四舍五入。在这种情况下,它们肯定都应该明确地向下舍入,因为它被计算为 19.25 像素。

奇怪的形状似乎是由根据非舍入值而不是舍入值计算的曲线引起的。比较设置非四舍五入值时的形状和显式设置四舍五入值时的形状,前者略微呈矩形,后者完全呈椭圆形。所以渲染曲线和渲染尺寸之间存在不一致。

这似乎只出现在 Chrome 中。 Safari 和 Firefox 都不显示此行为。
现在,如何舍入小数像素取决于浏览器实现,但您认为它至少在内部是一致的。我愿意得出结论,这是一个浏览器错误,应该向 Google Chrome 开发团队报告。

关于html - 边界半径不像预期的那样圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44907899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com