<div>
タグを使用してページにアイコンを挿入します。
<div class="icon warning"></div>There is a warning in the page
問題は、アイコンがテキストに近すぎることです。
アイコンのコードは次のとおりです。
div.icon{
display:inline-block;
width:16px;
height:16px;
background-color:transparent;
background-image:url(/images/icons.png);
background-repeat:no-repeat;
vertical-align:text-top;
background-position:0 0;
}
div.icon.warning{
background-position:-48px 0;
cursor:help;
}
アイコンの後にテキストが続く場合にのみ、アイコンとテキストの間に数ピクセルの距離を配置したいと思います。つまり、アイコンの後にテキストがない場合は、そのスペースは必要ありません。言い換えると、次のコードでは、div#icon1と「ページに警告があります」というテキストの間に5pxの距離を置きたいのですが、div#icon2とその後に続く要素の間に距離を置きたくありません。
<li><div id="icon1" class="icon warning"></div>There is a warning in the page</li>
<li><div id="icon2" class="icon warning"></div></li>
アイコンは常に要素内に表示されるとは限らない<li>
ため、提案されたセレクターはアイコンが表示される可能性のあるコンテキストに依存できないことに注意してください。アイコンについて確実な唯一のことは、アイコンの後にテキストが続く場合、アイコンとテキストの間にスペースが必要であるということです。