好了,所以我做了這個FC Barcelona CSS logo,一切都在正常工作:錯誤溢出元素裁剪與歌劇
- 火狐13
- 鉻20
- Safari 5的
- IE 9
但在Opera 11(和12太)這些blaugrana條紋不裁剪。我嘗試了很多配置,有和沒有額外的包裝,但我無法得到它的工作。
HTML:
<div id="blaugrana_stripes_container" class="abs border_black fill_purple cropper layer9 rounded">
<!-- Wrapper needed for some browsers to crop overflow properly -->
<div id="blaugrana_stripes_overflow_cropper" class="rounded">
<div class="blaugrana_stripes fill_purple border_blue"></div>
<div class="blaugrana_stripes fill_purple border_blue"></div>
</div>
</div>
相關的CSS:
#blaugrana_stripes_container, #blaugrana_stripes_overflow_cropper {
width: 244px;
height: 244px;
text-align: left;
-moz-border-radius: 155px 155px 134px 134px;
-webkit-border-radius: 155px 155px 134px 134px;
border-radius: 155px 155px 134px 134px;
}
#blaugrana_stripes_container {
left: 36px;
top: 62px;
border-width: 2px;
-ms-transform: scaleY(0.79);
-moz-transform: scaleY(0.79);
-webkit-transform: scaleY(0.79);
-o-transform: scaleY(0.79);
transform: scaleY(0.79);
z-index: 3;
}
#blaugrana_stripes_overflow_cropper {
overflow: hidden;
white-space: nowrap;
}
.blaugrana_stripes {
height: 100%;
width: 35px;
border-width: 0px 35px 0px 35px;
margin-right: 35px;
display: inline-block;
}
.cropper {
overflow: hidden;
font-size: 0;
margin: 0px;
padding: 0px;
border: none;
}
.abs {
position: absolute;
}
我在這裏把它抄了,因爲有很多的代碼,所以也許會有所幫助。以上我跳過了用於裝飾(border_black fill_purple
),z索引(layer9
)和javascript機制(rounded
)的類,因爲我認爲它們與問題無關。
當然,所有的東西都可以通過Firebug或其他開發工具在demo site上查看。
有什麼建議嗎?
1)未加前綴的屬性應該在前綴之後,而不是在2)'-o-border-radius'不存在之前。 – BoltClock 2012-07-07 10:47:01
好吧,我已經糾正了它(在演示網站和這裏),但這只是表面上的改變,在這種情況下它什麼也不做。 – Wirone 2012-07-07 21:52:05
FWIW這不是一個很好的圖形處理方法。放大時(在所有瀏覽器中)所有接縫都可見。相反,我建議使用SVG。無論如何,這已被報告爲:https://bugs.opera.com/browse/CORE-35453。 – 2012-07-09 11:14:07