beforeとafterを使うとどうなるの?
要素の前後にスタイル要素を追加できるようになる。
記述の仕方
たとえば
h1::before{
content: 'Hello!';
}
h1::after{
content: 'World!';
}
</style>
<h1>こんにちは</h1>
とHTMLがあったとする。
動作としては、
<h1>こんにちは</h1>
h1タグに対してh1::before
を実行。「Hello!」を表示する- h1タグの「こんにちは」を表示する
h1::after
を実行。「World!」を表示する
表示結果
Hello!こんにちはWorld!
と表示される。
::before
と:before
どっちが正しい?
:
(コロン)は、2つが正しい?それとも1つが正しい?
- 1つの場合は、CSS2での記述
- 2つの場合は、CSS3での記述
ただし、CSS3の対応がされてないブラウザもあるので、今はまだ1つでの記述が良いと思われる。今後は、対応が進めば2つでの記述が一般的となるだろう。
使用例
clearfixの使用
.clearfix::after
にすることによりリストを表示した後にフロートの解除を行う。
ul {
width:1040px;
margin:0 auto;
}
ul li {
float:left;
width:260px;
}
.clearfix::after{
content:"";
clear:both;
overflow:hidden;
}
- メニュー1
- メニュー2
- メニュー3
- メニュー4
リスト表示に使う(その1)
.clearfix::after
にすることによりリストを表示した後に※印の表示を行う。
.notes li {
list-style: none;
}
.notes li::before {
content: "※";
padding-right: 5px;
color: red;
}
<ul class="notes">
<li>注釈文○○○○</li>
<li>注釈文○○○○</li>
<li>注釈文○○○○</li>
<li>注釈文○○○○</li>
</ul>
表示結果
- 注釈文○○○○
- 注釈文○○○○
- 注釈文○○○○
- 注釈文○○○○
リスト表示に使う(その2)
.clearfix::after
にすることによりリストを表示した後に※印の表示を行う。
.info li {
list-style: none;
}
li.new:before {
content: "new";
margin-left: 5px;
color: #fff;
background: red;
padding: 1px 3px;
}
li.update::after {
content: "update";
margin-left: 5px;
color: #fff;
background: blue;
padding: 1px 3px;
}
li.lookup::after {
content: "lookup";
margin-left: 5px;
color: #fff;
background: green;
padding: 1px 3px;
}
<ul class="info">
<li class="new">お知らせ1○○○○</li>
<li class="update">お知らせ2○○○○</li>
<li class="lookup">お知らせ3○○○○</li>
</ul>
表示結果
- お知らせ1○○○○
- お知らせ2○○○○
- お知らせ3○○○○
まとめ
こんなことが出来るようになる。さらにグラフィックアイコンやhタグの装飾などいろいろなことにしよう出来る。それはまた今度の機会にでもレクチャーしよう!では、いろいろ工夫して使ってみてよう!
0 件のコメント :
コメントを投稿