小于 1px 的 CSS 边框

标签 css border

<分区>

Possible Duplicate:
HTML: Sub-pixel border

默认的 border:1px 太大了。但是,border: 0.5px solid; 不起作用。 是否有一种 CSS 解决方案可以使边框大小减半?

最佳答案

像素是用于渲染某物的最小单位值,但您可以通过修改颜色(眼睛最多只能看到 certain resolution)来欺骗厚度。

这里是 a test证明这一点:

div { border-color: blue; border-style: solid; margin: 2px; }

div.b1 { border-width: 1px; }
div.b2 { border-width: 0.1em; }
div.b3 { border-width: 0.01em; }
div.b4 { border-width: 1px; border-color: rgb(160,160,255); }
<div class="b1">Some text</div>
<div class="b2">Some text</div>
<div class="b3">Some text</div>
<div class="b4">Some text</div>

输出

enter image description here

这给人一种错觉,即最后一个 DIV 的边框宽度较小,因为蓝色边框与白色背景的融合度更高。


编辑:替代解决方案

Alpha 值也可用于模拟相同的效果,而无需计算和操作 RGB 值。

.container {
  border-style: solid;
  border-width: 1px;
  
  margin-bottom: 10px;
}

.border-100 { border-color: rgba(0,0,255,1); }
.border-75 { border-color: rgba(0,0,255,0.75); }
.border-50 { border-color: rgba(0,0,255,0.5); }
.border-25 { border-color: rgba(0,0,255,0.25); }
<div class="container border-100">Container 1 (alpha = 1)</div>
<div class="container border-75">Container 2 (alpha = 0.75)</div>
<div class="container border-50">Container 3 (alpha = 0.5)</div>
<div class="container border-25">Container 4 (alpha = 0.25)</div>

关于小于 1px 的 CSS 边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13891177/

相关文章:

css - Fieldset 奇怪的图例下划线问题

CSS, Flexbox, CSS Grid, Borders, 通过内部子 div 覆盖父边框

java - 如何设置 SWT 表中可见的行,包括单元格中的小部件?

html - Flexbox 内部的 Flexbox( slider )

html - 如何去除HTML中的一些td边框

html - CSS Float 导致中间空白

html - 转换标题元素的文本

html - <div> 元素 : How can i get my div text to be as it is while resizing

CSS:父级没有边框时的边距顶部

html - background on top off 背景,周围的内容