我正在爲基於響應%的網格的CSS模板工作。我早些時候使用過IE7,並且做了一些愚蠢的事情,我猜,現在它不起作用。IE7 CSS寬度:100%問題
http://danmathisen.com/lightbase-css/
它目前是如何工作的:
列基於個百分點。因此1/3寬度列(.col-1-3
)將是width:32%
+ margin-left:1%
+ padding:1%
。這主要是基於克里斯科伊爾的Don't Overthink It Grids。
在現代瀏覽器中,填充不會影響div寬度。但在IE7中呢。所以我有IE類(.lt-ie8
),可容納1%的填充。 .lt-ie8 .col-1-3 { width: 30%; }
。因此,30%寬度+ 1%空白左側+ 2%填充左/右* 3 - 1%:第一個孩子= 100%。對? 爲什麼不在IE7中工作?
解決方案:
我可以使用behavior: url(/scripts/boxsizing.htc)
,但希望能沒有這個可行的。
或者使用JS來計算寬度,然後減去1px。我認爲這會奏效,但這並不理想。
或以99%的寬度結算。也不理想。
我很喜歡純CSS的解決方案。有什麼想法嗎?
很高興看到有人真的先徹底研究過他們的問題。 – Charles
您的問題的一部分可能是舍入錯誤。因此,通常不建議使用基於百分比的尺寸,*特別是在混合寬度/填充/邊距時。 –
@CharlesTian我一直在尋找一個小時的答案......這就是我帶來的。 – dmathisen