マイヤーは、そのバージョンのブロッククォート/ qリセットスタイルでポールチャップリンを賞賛します。
チャプリンのpostには、次のスタイルブロックが含まれています。アノテーションが付いています。
blockquote, q
{
quotes: none;
}
/*
Safari doesn't support the quotes attribute, so we do this instead.
*/
blockquote:before, blockquote:after, q:before, q:after
{
/*
CSS 2; used to remove quotes in case "none" fails below.
*/
content: "";
/*
CSS 2.1; will remove quotes if supported, and override the above.
User-agents that don't understand "none" should ignore it, and
keep the above value. This is here for future compatibility,
though I'm not 100% convinced that it's a good idea...
*/
content: none;
}
それを煮詰めるするには:ほとんどのブラウザの現在のバージョンでは、単に:before
と:after
セレクタを使用する必要がなくなりquotes: none
スタイルをサポートしています。奇妙な人はSafari/WebKitで、quotes: none
を尊敬しませんでした。これを解決する次の方法は:before
/:after
疑似要素で行われましたが、WebKitではその書き込み時点でcontent: none
もサポートされていなかったので、content: ""
が必要でした。
しかし、現在のWebKitブラウザ(Safari 5.1とChrome 12)のquick testは、quotes: none
が両方でうまく動作することを示しています。 content: none
bug against WebKitはなんらかの理由でまだオープンしていますが、bug for the quotes propertyはかなり最近閉鎖されています。
短い話ですが、余分なスタイルが古いバージョンのSafari(場合によってはChrome)をサポートするように見えます。彼らがサポートを得たときに正確に釘付けにするのはもう少し難しいですが、すべてのブラウザの現在のバージョンはquotes: none
(そしてcontent: none
)をうまく処理しているようです。
したがって、 'content:none'を使うのに本当の利点はありませんか? –
'content:none'と' content: "" 'は全く同じではありません。 'content:none'は' before'または 'after'疑似要素が生成されることを明示的に防止するためのものです(実際にはコンテンツを生成した別のスタイルをオーバーライドするためにのみ使用されます)。しかし、彼らは空です。 * real *のメリットについては、 ':before:や':after'のスタイルを組み合わせると、違いが見えるようになりますが(パディングや背景色のように)、純粋さや正確さの方がはるかに低いでしょう。とにかく、ブラウザをサポートするために 'content:none'を持つことには害はありません。 –
私は前のスタイルを上書きするときにこれを見つけたと言います。私はコンテンツが以前のスタイルのいくつかを間違いなく持っていて、 "none"というコンテンツは私が(上記のコメントで示唆したように)テストするのに使うipadではうまくいきませんでした。私は "ベルトとブレース"オーバーライド(すべてのスタイルをリセットする必要はありません)として擬似要素に表示なしを使用しました。 – user1010892