IEで自動ではクオーテーションが付かない(付けられない) <q>要素の前後に " (") をつけます。
/* quotation */
q {
zoom: expression(
this.style.zoom || (
this.innerHTML = ' " ' + this.innerHTML + ' " ', 1
)
);
white-space:normal;
}
絶対誰も使わなさそうなスタイルとして style.zoom としていますが、 className とか style.width とかでもいいかも知れません。
/* quotation */
q {
behavior: expression(
(this.className && this.className.indexOf(' iex') <= 0) ? 1 : (
this.innerHTML = ' " ' + this.innerHTML + ' " ',
this.className = (this.className || '') + ' iex'
)
);
white-space:normal;
}
また、ここでは
「<q>要素のクオーテーション」
ってことで紹介しましたが、これは、
q:before, q:after { content: '"'; }
とやってることとだいたい同義です。
つまり、<q>以外の要素でもできるし、
"じゃなくたっていいわけです。
それと、ひとつ大事な注意点として。
これを使ってクオーテーションとかが増えたせいで
結果的な半角羅列になって、
ブラウザの横スクロールバーがでてない状態から出る状態になると、
だいたい100%ブラウザクラッシュします。(笑えない)
間違っても
q { white-space:nowrap; } とかやっちゃいけませんw
q { white-space:normal; }
のままでよろしく。
' " '
の前後にスペースいれてるのも、それ対策です。