我正在爲我的一個類的項目工作,並遇到了一個奇怪的定位問題。我有兩個齒輪圖標顯示帶有文本標誌的字體真棒庫。一個齒輪的尺寸較大並略微偏離屏幕而另一個齒輪的位置幾乎接觸較大的齒輪。在我的筆記本電腦中,元素以默認的16px字體大小正確顯示。當我切換到我的桌面(50英寸4k電視顯示器,鉻合金設置爲增加20px的字體大小時),齒輪不對齊。絕對定位元素在高DPI顯示不對齊
我的問題:如何定位這兩個圖標,使它們一致,而不管用戶定義的文本大小?
相關CSS:
div.logo i.cog-logo-small {
font-size: 1.5em;
top: 20px;
left: 32px;
}
div.logo i.cog-logo, div.logo i.cog-logo-small {
position: absolute;
}
div.logo i, div.logo a {
color: #c06014;
}
.fa {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
div.logo i.cog-logo {
font-size: 3em;
top: -15px;
left: -15px;
}
相關HTML
<nav class="top-bar clearfix">
<div class="logo">
<a href="index.html">
<i class="cog-logo fa fa-cog gear-spin fa-3x" aria-hidden="true"></i>
<i class="cog-logo-small fa fa-cog gear-spin-reverse fa-2x" aria-hidden="true"></i>
<span class="logotext">logotext</span>
</a>
<span class="tagline">tagline</span>
</div>
</nav>
這是您的代碼...它是否重現您當前的佈局?他們不會在不同的屏幕尺寸下爲我移動。 https://codepen.io/anon/pen/EmJdOL –
這個問題不是屏幕大小,而是用戶在Chrome中設置自定義字體大小。由於我的屏幕的實際大小,我當前的桌面必須使用更大的字體大小,而我的桌面在chrome設置中使用標準字體大小。即使您鏈接的代碼筆示例在更改chrome的字體大小時也具有相同的效果(您可以通過轉到chrome:// settings>高級設置> web內容>字體大小進行復制) –
您應該儘量不將'em'這是一個非常具體的'px'的相對大小。 –