最好的方式来代表在CSS中的1/3的100%?
我有一个很大的<div>
,里面有三个小的<div>
,内联。 他们每个都有33%的宽度,但是由于3 * 33%!= 100%会导致一些alignment问题。 什么是最好的方式来表示在这样的CSS完美的第三个? 也许只有33.33%?
现在,在现代浏览器中广泛支持 calc
,您可以使用:
#myDiv { width: calc(100% /3); }
或者如果你的浏览器不支持它,你可以使用它作为后备:
#myDivWithFallback { width: 33.33%; width: calc(100% / 3); }
你是否有利润的余地? 你可以在每栏中以30%的价格在中间栏的两边保留5%的保证金。
快速示例
.col_1_3 { width: 33%; float: left; } .col_1_3:nth-of-type(even) { width: 34%; }
最高分辨率屏幕是一个非生产NEC液晶屏幕 ,分辨率为2800×2100。 即使在这样的尺寸下,一个像素是屏幕宽度的0.0357%。 所以33.33%
应该足够接近,直到5,000像素宽的屏幕成为常态。
John Resig对不同浏览器的子像素舍入做了一些研究 ,但是,根据你的三列来确定屏幕的宽度可能永远不会有完美的解决scheme。