Attr()
概要
最も初期の古代聖遺物 attr()の説明と概要
- とても1998年に公開されたとは思えない先進的な古代魔法の秘密に迫るどうも、この発掘調査の責任者、ジェミパラ・トラッセンダー、古代魔法専門の魔導士だ。今回も引き続き、古代遺跡発掘の報告・解説を続けたい。
今回は第一次遺跡発掘で見つかったAttr()関数について紹介したいと思う。
まず何といっても、この魔法陣、ほぼ30年近く前にすでに魔道省CSS庁で仕様が公開されていたというんだから、驚きだ。 - 属性値を変数のように扱う関数まず、attr()はCSS神聖魔法の 関数だ。役割は、HTMLエレメンツに記載されている属性値を取得し、CSS疑似属性のcontentプロパティ値で使用すること。
とはいっても最初の勧告は1998年なのでほぼWEBの歴史そのものを歩んできたCSS関数といえる。そんな長い歴史をもつ関数なので、前回の報告書にならい3つの時代に分けて解説したいと思う。
古代魔法attr()関数の歩み
- 第一期:attr()関数の勧告(1998~2013)attr()関数が初めて公開された年。この時代はまだHTML4術式の時代。まだdata属性術式は存在してなかった。
HTML属性の値=単なる文字列(href、title、alt、srcといった原始的な属性の文字列)としてCSSに渡すことしか考慮されていなかった。
CSS側でも疑似要素(::before, ::after)のcontentプロパティで表示させることのみの機能だった。 - 第二期:data属性の登場(2014~2023)2014年にHTML5が登場し、初めてdata属性術式が実装された。この自在に属性を生成できる機能の登場により、一気に変数術式のような扱いが可能になった。data-test=”脚注だよ”が可能になったわけだ。
つまりそれまで”href、title、alt、src”といった原始的なHTML属性の文字列だけだったのが、文字列であれば自由にCSSへ渡せるようになったのだから一回目の革命といえる。
ただし、それでもCSSで利用できるのは疑似要素のcontentプロパティのみだったのは変わらない。 - 第三期:型指定付き attr()(Typed attr())への進化(2024~現代)2024年のCSS4(通称・正式名称はCSS Values and Units Module Level 4)で策定が進み、型指定付き attr()(Typed attr())へ仕様が進化。
HTMLから取得できるデータが、これまでの文字列のみから数値を含むあらゆるプロパティ値となった。
CSS側での使用も、これまでの疑似要素のcontentプロパティだけでなくほぼすべてのプロパティで利用できるようになった。
これが二回目の革命といえる。
ただし、注意点も。
この最新仕様が実装されているブラウザ魔法具はまだ、Googleギルドのクロミウムやマイクロギルド魔道商会の英知など一部のみ。
Firefoxium、Safariumでは現在まだ未対応。なので扱いには注意が必要だ。
