2011-10-08 46 views
1

我使用ie8,不知道其他版本。 我在這個地方使用了派,它一般工作正常。然而,我所有的表單輸入元素都有一個盒子陰影和邊框半徑,沒有邊框(幾乎所有的樣式)。在FF/Safari/Chrome中一切都很好,但在IE中,這些表單缺少其陰影。css餡餅只對外業元素不起作用

我還使用自定義風格的我的選擇下拉領域這(在CoffeeScript中)

$.fn.extend customStyle: (options) -> 
    if not $.browser.msie or ($.browser.msie and $.browser.version > 6) 
    @each -> 
     currentSelected = $(this).find(":selected") 
     $(this).after('<span class="customStyleSelectBox"><span class="customStyleSelectBoxInner">' + currentSelected.text() + '</span></span>').css 
     position: 'absolute' 
     opacity: 0 
     fontSize: $(this).next().css("font-size") 

     selectBoxSpan = $(this).next() 
     selectBoxWidth = parseInt($(this).width()) - parseInt(selectBoxSpan.css("padding-left")) - parseInt(selectBoxSpan.css("padding-right")) 
     selectBoxSpanInner = selectBoxSpan.find(":first-child") 
     selectBoxSpan.css display: "inline-block" 
     selectBoxSpanInner.css 
     width: selectBoxWidth 
     display: "inline-block" 

     selectBoxHeight = parseInt(selectBoxSpan.height()) + parseInt(selectBoxSpan.css("padding-top")) + parseInt(selectBoxSpan.css("padding-bottom")) 
     $(this).height(selectBoxHeight).change -> 
     selectBoxSpanInner.text($(this).find(":selected").text()).parent().addClass "changed" 

,並呼籲$('select').customStyle()。本質上,它將在原始<select>下添加一個樣式爲span的樣式,該樣式將成爲新的菜單樣式,同時仍使用原始<options>,同時通過不透明度隱藏原始select

這些都是我頂嘴風格

.customStyleSelectBox 
    +border-radius(4px) 
    +box-shadow(0 1px 1px silver inset) 
    +pie /*adds pie.htc behavior */ 
    position: relative 
    z-index: 0 
    width: 70px 
    background-color: white 
    color: #333 
    font-size: 12px 
    padding: 7px 

這是之前在IE工作(至少<select>正確的風格,實際上是顯示出來),但現在它不是(現在是一堆場輪廓是的完全白色,融入彼此並進入下一個輸入字段,不知道是什麼改變了。無論如何,如果它的工作z-index /定位,使得它沒有任何下拉時,你點擊它。對於具有自定義樣式的選擇下拉列表以及無框陰影問題?謝謝!

+0

IE8不支持邊框半徑,旁邊的那個,你必須提供一些代碼來獲得幫助..或者http://jsfiddle.net/ –

+1

很確定我在頭文件中提到了css餅,並且在第一個幾句話。 – butterywombat

+0

我有一種感覺,CSS3 PIE不能運用它的許多魔法來形成元素。儘管如此,請不要對我說。 – thirtydot

回答

0

將「position:relative;」應用於受影響的輸入字段。