血統の森: Home > web実験小屋 > CSS3ウェブブラウザ実装メモ > text-emphasis (CSS3 Text)

xreaの広告です。

hosting by xrea.com

text-emphasis (CSS3 Text)

作成:2011-10-23

圏点のスタイル指定についてまとめてみた。この文章作成時では、webkitでのみ動作する。

目次

text-emphasis-style

圏点の字形を指定する。

仕様で規定された字形として、dot(小さい円)、circle(大きい円)、double-circle(二重丸)、triangle(三角)、sesame(ゴマ)の5種類が用意されている。これらについて、filled(塗りつぶし)、もしくはopen(中抜き)との組み合わせで計10種類の圏点を明示的に指定できる。表示される字形は次の通り。

value 記号 名称 Unicode
dot filledビュレットU+2022
dot open白ビュレットU+25E6
circle filled黒丸U+25CF
circle open白丸U+25CB
double-circle filled蛇の目U+25C9
double-circle open二重丸U+25CE
triangle filled黒三角U+25B2
triangle open三角U+25B3
sesame filledゴマU+FE45
sesame open白ゴマU+FE46

noneとすれば圏点をなくすことができる。また、上記の表にはない任意の一文字を圏点として指定することもできる。

仕様書には、以下のことも定められている。

filledを指定

ぼくもできなかった。Linux がぼくのレーダー画面に泳ぎ着いたのは 1993 年の頭だったけれど、その頃ぼくはすでに Unix やフリーソフト開発に 10 年以上も関わってきていた。1980 年代半ば、ぼくは最初期の GNU 協力者の一人だったし、ネット上にかなりのフリーソフトもリリースして、最初期いまでも広く使われているようなプログラムをいくつか(nethack、 Emacs VC モードと GUD モード、xlife など)単独または共同で開発してきた。だから、もうやり方はわかってるもんだと思いこんでいた。

openを指定

ぼくもできなかった。Linux がぼくのレーダー画面に泳ぎ着いたのは 1993 年の頭だったけれど、その頃ぼくはすでに Unix やフリーソフト開発に 10 年以上も関わってきていた。1980 年代半ば、ぼくは最初期の GNU 協力者の一人だったし、ネット上にかなりのフリーソフトもリリースして、最初期いまでも広く使われているようなプログラムをいくつか(nethack、 Emacs VC モードと GUD モード、xlife など)単独または共同で開発してきた。だから、もうやり方はわかってるもんだと思いこんでいた。

coding

div.open .dot {
 -webkit-text-emphasis-style: open dot ;
}
div.open .circle {
 -webkit-text-emphasis-style:open circle ;
}
div.open .double-circle {
 -webkit-text-emphasis-style: open double-circle ;
}
div.open .triangle {
 -webkit-text-emphasis-style: open triangle ;
}
div.open .sesame {
 -webkit-text-emphasis-style: open sesame ;
}
/* 任意の一文字を指定 */
div.open .star {
 -webkit-text-emphasis-style: '☆' ;
}
...
<div class="open">
<p><code>open</code>を指定</p>
<p><em class="dot">ぼくもできなかった</em>。Linux がぼくの<em class="circle">レーダー画面</em>に泳ぎ着いたのは 1993 年の頭だったけれど、その頃ぼくはすでに Unix や<em class="double-circle">フリーソフト開発</em>に 10 年以上も関わってきていた。1980 年代半ば、ぼくは<em class="triangle">最初期の GNU 協力者</em>の一人だったし、ネット上にかなりのフリーソフトもリリースして、<em class="sesame">最初期いまでも広く使われているような</em>プログラムをいくつか(nethack、 Emacs VC モードと GUD モード、xlife など)単独または共同で開発してきた。だから、<em class="star">もうやり方はわかってる</em>もんだと思いこんでいた。
</p></div>

text-emphasis-color

その名の通り、圏点の色を指定する。

ぼくもできなかった。Linux がぼくのレーダー画面に泳ぎ着いたのは 1993 年の頭だったけれど、その頃ぼくはすでに Unix やフリーソフト開発に 10 年以上も関わってきていた。

coding

.color1, .color2, .color3 {-webkit-text-emphasis-style: filled circle;}
.color1 {-webkit-text-emphasis-color:red;}
.color2 {-webkit-text-emphasis-color:hotpink;}
.color3 {-webkit-text-emphasis-color:rgba(255,160,122,0.5);}
...
<p><em class="color1">ぼくもできなかった</em>。Linux がぼくの<em class="color2">レーダー画面</em>に泳ぎ着いたのは 1993 年の頭だったけれど、その頃ぼくはすでに Unix や<em class="color3">フリーソフト開発</em>に 10 年以上も関わってきていた。</p>

text-emphasis

短縮記法。圏点の字形と色を一度に指定できる。

coding例

.test {
 -webkit-text-emphasis:circle red;/* 赤丸 */
}
...
<p><em class="test">ぼくもできなかった</em></p>

text-emphasis-position

仕様書では、横書き時のvalueとしてadobe belowとなっているが、webkitではover underで指定する。縦書きはleftとrightで指定できるが、未調査。

例文

ぼくもできなかった

ぼくもできなかった

coding

.above ,.below {-webkit-text-emphasis-style: filled circle;}
.above {-webkit-text-emphasis-position: over;}
.below {-webkit-text-emphasis-position: under;}
...
<p><em class="above">ぼくもできなかった</em></p>
<p><em class="below">ぼくもできなかった</em></p>

text-emphasis-skip

圏点の位置を指示するプロパティ。webkitの実装には存在しない。執筆時のEditor's Draftでも、under brainstormingとあり、まだ案が固まっていないと思われる。Unicodeが参照されていて、文字によって場所を変える?ということらしい。

検証に使用したブラウザ

Windows 7で検証した。

Webkit(Safari)
AppleWebKit/534.51.22 Version/5.1.1 Safari/534.51.22(リリース版)
Webkit(Google Chrome)
AppleWebKit/535.7 Chrome/16.0.912.4 Safari/535.7(Devチャンネル版)

仕様書とリファレンス

CSS Text Level 3 (WD 2011-09-01) 10.2. Emphasis Marks
http://www.w3.org/TR/2011/WD-css3-text-20110901/#emphasis-marks
日本語組版処理の要件(日本語版) (W3C 技術ノート 2011-09-01) 3.3.9 圏点の処理
http://www.w3.org/TR/2009/NOTE-jlreq-20090604/ja/#ja-subheading2_3_9
Changeset 73219 – WebKit
http://trac.webkit.org/changeset/73219
圏点 - Wikipedia
http://ja.wikipedia.org/wiki/%E5%9C%8F%E7%82%B9
The Cathedral and the Bazaar(邦題:伽藍とバザール)
http://cruel.org/freeware/cathedral.html
使用した文章は邦訳からコピーした。