index.htmlのソースの中にこのように書いている部分があります。
<div id="danraku">
<ul id="ichi">
<li>箇条書き1</li>
<li><a href="#">箇条書き2</a></li>
<li>箇条書き3
<ul id="ni">
<li>こども1</li>
<li><a href="#">こども2</a></li>
<li>こども3</li>
</ul>
</li>
<li>箇条書き4</li>
</ul>
</div>
これをDOMとして説明調で記述すると
idがdanrakuのdiv の子には、idがichiのulがあります。
idがichiのulの子には、4つのliがあります。
1つ目のliの子はありません
2つ目のliの子はaがあります。
3つ目のliの子には、idがniのulがあり、さらにその子には3つのliがあります。このうち2つ目のliには子としてaがあります。
4つ目のliの子はありません
となります。
で、このHTMLには、2つのulがありますが、idがdanrakuのdiv絡みてみると、ichiのulは子であり、niのulは孫ということになります。
ここではulタグはこの2つしかありませんが、色んな場所でulタグが出現するのは十分考えられますね。
で、たくさんあるulの中で、「idがdanrakuのdivの中にあるulを定義する」というときには「子孫セレクタ」という考え方を使います。
子孫セレクタの表記はCSSの場合は、
要素 子要素 {
設定
}
/* 今回の場合は */
#danraku ul {
font-size: 20px;
}
のような表記を行い、jQueryでは、
$('要素 子要素').メソッド
/* 今回の場合は */
$('#danraku ul').css({
fontSize: '20px'
});
という表記をします。
子孫セレクタと書いていますから、子どもだろうと孫だろうと(ひ孫だろうと)その領域に含まれている子要素はすべて含まれます。
さて、ここで、idがdanrakuの要素の下のulのcssの設定を「下線(ボーダー)を黒色で実線、5ピクセルにする」というjQueryを追加しましょう。
$('#danraku ul').css('border-bottom','5px solid black');
// もしくは
$('#danraku ul').css{(
'border-bottom': '5px solid black')
});
// もしくは
$('#danraku ul').css{(
borderBottom: '5px solid black')
});
子ulも、孫のulも、下のボーダーが黒く表示されましたか?