HTML
<progress max="100" value="80" data-value="5"></progress>
CSS
progress { margin: 50px; width:250px; border:0; }
CSS (試行 1)
progress:before, progress:after { content: attr(data-value); }
CSS (試行 2)
progress::-webkit-progress-bar:before,
progress::-webkit-progress-bar:after { content: attr(data-value); }
progress::-moz-progress-bar:before,
progress::-moz-progress-bar:after { content: attr(data-value); }
CSS (試行 3)
progress::-webkit-progress-value:before,
progress::-webkit-progress-value:after { content: attr(data-value); }
progress::-moz-progress-value:before,
progress::-moz-progress-value:after { content: attr(data-value); }
上記の試みはどれも成功しませんでした。:before
また、との異なる CSS コード ブロックを使用して、上記の各バージョンを試しました:after
。
目的
<progress>
HTML5要素の前後に CSS で生成されたコンテンツを挿入します。これは可能ですか?
JsFiddle デモ
http://jsfiddle.net/pankajparashar/MNL2C/
アップデート
次のCSSを使用すると機能します。
progress::-webkit-progress-bar:before,
progress::-webkit-progress-bar:after { content: '123'; }
結論
どうやら、CSS に静的コンテンツを挿入すると、機能するようです。しかし、コンテンツを使用する場合はそうdata-*
ではありません。