如果我刪除
.box-media-link-container {
float:left;
}
它按預期工作。這有什麼好的解釋嗎?有沒有其他的選擇float:left? (除了表)
工作實施例(非液浮容器):http://jsfiddle.net/Kju6z/5/
(編輯2:即使不是這種聖盃,在更先進的實施例中 - 這仍然失敗,即使沒有浮動)。
如果你能5.1(通過http://browserstack.com或類似)運行的Safari瀏覽器 - 請檢查了這一點。我不確定這是什麼原因。
.box-media-box .box-media-link {
max-width:75px;
width:auto;
height:auto;
}
.box-media img {
max-width:100%;
height:auto;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
overflow:hidden;
}
的浮動圖像寬度是事先不知道,但圖像容器具有最大寬度設定960x75像素(注意,在這種情況下,我不知道該圖像是實際上100px的 - 但這只是例子)。
圖像本身的最大寬度爲100%,高度爲自動,因此它具有響應性。
這似乎適用於除Safari瀏覽器以外的所有瀏覽器,這個甚至不顯示圖像。它有時會這樣做,這讓我覺得這個問題可能是由於圖像還沒有被加載,而CSS被解釋,這可能是什麼原因?
查看附件截圖,瞭解它在Safari 5.1中的外觀(小黑色邊框圈應該包含圖像)。它看起來好像圖像尚未加載(因爲沒有設置寬度或高度),但圖像從不加載。只有當你去檢查元素時,它纔會立即彈出,或者在你更改任何一個屬性之後。
如果圖像尺寸是未知的,因爲它是動態生成的內容的一部分,是不是你能夠提供尺寸動態呢? – cimmanon
@cimmanon - 不,這些是來自facebook api的結果 - 他們確實有一些圖片,他們允許您控制大小,但不是我需要的大小。 – Wesley
僅僅因爲FB API沒有明確提供圖片尺寸,並不意味着您*無法*獲取它們(請參閱:http://stackoverflow.com/a/626505/1652962)。 – cimmanon