2013-03-28 59 views
4

我花了太長時間試圖刪除選擇框左側的多餘空格,在Chrome開發人員工具中,我終於看到用戶代理樣式表正在添加2px的margin-left(查看計算樣式)。但是當我點擊margin-left下拉菜單來查看這個樣式被定義的位置時,它會顯示它被定義爲0em,如下面的截圖所示......有人可以向我解釋這個嗎?在Chrome用戶代理樣式表中,2px = 0em如何?

Chrome user agent stylesheet - how does 2px = 0em?

+0

我不能重新對此,您有一個鏈接到您的site? – gaynorvader

+0

CSS中的零值與所有單位相等,這就是爲什麼你可以在任何有尺寸的地方都有一個無單位的零值,必須有一些你缺少的其他CSS規則 – zneak

+1

我也有這個問題 - 完全相同的問題,並導致無處不在的對齊問題,我可以設置邊距爲0,並解決它,但我不應該如果用戶代理樣式表已指定0。 – ClarkeyBoy

回答

0

從該屏幕截圖,它看起來像有如下規則: margin: 2px 2px 4px 2px被覆蓋什麼用戶代理只具備最初作爲0EM

2

我就遇到了這個問題,以及 - 設置明確的高度來解決問題。

原因:

「*內在利潤率的目的是儘量避免對彼此撞了相鄰的控制尤其是帶有圓形控制這個看起來很可怕,你看到的值發生變化的原因是。當我們認爲它不會破壞頁面佈局時,我們只設置內部邊距如果作者在控件上指定了明確的高度/寬度,那麼我們假設設計人員需要像素精確控制,因此我們將邊距以避免中斷頁面佈局

此功能最初是由Google的首頁,其中有兩個按鈕,彼此正確對抗。他們現在在頁面的現代版本上有空格,但過去他們沒有。這種情況也會發生在Web上的所有地方,特別是按鈕旁邊的文本字段。他們最終在OS X上尋找可怕特別是(他們看上去很糟糕Windows上也是如此,只是沒有那麼糟糕)*」

來源:http://code.google.com/p/chromium/issues/detail?id=128306