2017-03-06 6 views
1

実際には、CSSスタイルに式を適用しました。しかし、IE8では今は適用されていません。どのようにCSS、JavaScriptを使用してこれを修正するには? (また、「CSS式」と呼ばれる)IE8のCSS式をJavaScriptで置き換える方法

.fixedHeaderTr1  
    { 
    z-index:11;  
    position:relative; 
    top:expression(this.offsetParent.scrollTop); 
    border: 1; 
    };  

    .fixedHeaderCol1  
    { 
    position:relative; 
    z-index:11; 
    left:expression(this.parentElement.offsetParent.scrollLeft);  
    }; 

    .fixedDataCol1{ 
    LEFT:expression(this.parentElement.offsetParent.parentElement.scrollLeft); 
    position:relative; 
    z-index:11; 
    background-color:#f3f7fe; 
    } 
    .fixedDataCol12{ 
    LEFT:expression(this.parentElement.offsetParent.parentElement.scrollLeft); 
    position:relative; 
    z-index:11; 
    background-color:#f9f9f9; 
    } 
+0

をはい。 JavaScriptとDOMのスタイルプロパティを使用します。 – evolutionxbox

+0

こんにちは値を取得する方法を私に明確に説明してくださいできますか?私はjavascriptには新しく、学習しています。あなたがLEFTできるなら、それは素晴らしいでしょう:expression(this.parentElement.offsetParent.parentElement.scrollLeft);この部分のソート方法を教えてください。左に値を割り当てる –

答えて

1

重要な動的な性質はもはやIE8標準モードと高では、Internet Explorer 8以降でサポートされていません。この決定は、標準の準拠、ブラウザのパフォーマンス、およびセキュリティ上の理由から行われました。動的プロパティは、IE7モードまたはIE5モードのInternet Explorer 8で引き続き使用できます。 IE8モードのInternet Explorer 8は、カスケーディングスタイルシート、レベル2リビジョン1(CSS2.1)標準に完全に準拠しているため、カスケーディングを回避するために書かれたほとんどの動的プロパティ以前のバージョンのInternet Explorerのスタイルシート(CSS)関連の欠点はもう必要なくなりました。より具体的な用途の他の動的プロパティは、一般的に標準のJavaScriptに置き換えることができます。

https://msdn.microsoft.com/en-us/library/ms537634(v=vs.85).aspx

JSの交換の例:

document.getElementsByClassName('fixedHeaderCol1')[0].style.left = this.parentElement.offsetParent.scrollLeft; 

も参照してください:https://stackoverflow.com/a/30102325/5758328

+0

私は 'this'を使わないことをお勧めします – evolutionxbox

関連する問題