12

このMS 互換性テーブルでは、IE9 は疑似要素::beforeと をサポートしていません::afterが、試してみるとサポートしているようです... JSBinを参照してください

私は何か間違ったことをしていますか?私はIE9から何かを隠すための素晴らしいツールだと思っ::before::afterいましたが、実際にはそうではありません。

4

3 に答える 3

27

従来のシングルコロン表記の CSS2 疑似要素:beforeおよび:afterは、IE8 以降でサポートされています。それらは CSS3 にとって新しいものではありません。

一方、ダブルコロン表記はCSS3 の新機能です。IE9::beforeandのこの新しい表記法をサポートして::afterおり、CSS1 疑似要素::first-lineandについても同様です::first-letter。ただし、将来的には、新しい疑似要素で単一コロンの構文を使用することはできず、ブラウザー (IE を含む) はすべての疑似要素で二重コロンの構文をサポートすることが期待されます。

上記のリンクされた個々のセレクターのドキュメントとテストケースによると、確かにIE9が新しい疑似要素構文をサポートしていないため、その表がIE9が新しい疑似要素構文をサポートしていないと言っている理由はわかりません。もちろん、この答えも。

于 2011-08-23T07:10:34.407 に答える
5

IE 9は、表記法::after::before(2つのコロンを使用した)「標準モード」をサポートしています。「クァークズモード」では、そうではありません。これは、たとえば次のようにテストできます。

<style>
p::after  {  
  content: "***AFTER***";  
} 
</style>
<p>Hello world 

ここでは、IE 9がクァークズモードになるため、CSSルールは無視されます。ただし、最初に次の行を追加すると、IE 9は標準モードになり、CSSルールが有効になります。

<!doctype html>

IE 9では、クァークズモードでは、新しいCSS機能(CSS 2.1にもIEレガシーにもないほとんどの機能)がサポートされていないのが一般的です。クァークズモードでは、IE9は古い1コロン表記もサポートしていませ :after:before。開発者ツール(F12)で手動、「ドキュメントモード」メニュー、またはタグを使用してドキュメントレベルで選択できる「IE8モード」でそれらをサポートします(2コロンバージョンはサポートしません)<meta http-equiv="X-UA-Compatible" content="IE=8">

于 2013-01-03T19:36:53.523 に答える
1

http://www.w3.org/community/webed/wiki/Advanced_CSS_selectorsから引用

CSS3 疑似要素の二重コロン構文 疑似要素 を記述する新しい CSS3 の方法は、疑似クラスと区別するために a::after { ... } のように二重コロンを使用することに注意してください。これは、CSS で時々見られることがあります。ただし、CSS3 では、下位互換性のために単一のコロン疑似要素も引き続き許可されているため、当面はこの構文を使用することをお勧めします。

于 2013-06-19T08:01:52.283 に答える