LoginSignup
0
1

More than 3 years have passed since last update.

CSSの属性セレクタの書き方

Last updated at Posted at 2020-08-21

【概要】

1.属性・セレクタとは何か

2.CSSの属性セレクタの書き方

3.ここから学んだこと

1.属性・セレクタとは何か

属性
タグの中の要素と一緒に含まれており、要素に情報を付け加える役割をもちます。属性に名前がついているものが”属性値”と言われます。

セレクタ
CSSで使う言葉で、どのHTMLの属性に適用するかを示す役割です。

なのでclass属性とclassセレクタの違いは、
class属性は”HTML”、classセレクタは”CSS"を示しています。

<link rel="stylesheet" href="abc.css>

<>:タグ
link:要素
rel,href:属性
stylesheet,abc.css:属性値


2.CSSのセレクタの書き方

では実際に、CSSをHTMLに反映する仕方をここに記載します。意外と知らないやり方もあるかもしれません。


❶-(1)要素に反映する

div{
 color: red;
}
".(ピリオド)"無しで反映できます



❶-(2)要素の複数に反映する

div.name,div.gender{
 color: red;
}

<div class="name"></div>
<div class="gender"></div>
に反映します



❷-(1)一部分の名前に反映

.name{
 color: red;
}

"name"がついている属性は全て反映されます
<div class="A name"></div>
<div class="B name"></div>に適用されます

また
*.name{
 color: red;
}
でも同じ意味になります



❷-(2)一部分の名前に反映(要素)

前方一致
div[class^="na"]{color: red;}
後方一致スペースハイフンがあっても後方一致の意味であれば反映
div[class$="me"]{color: red;}
"m"が入っていれば一致スペースハイフンがあっても反映
div[class*="m"]{color: red;}
"name"が入っていれば一致スペースがあっても反映ハイフンがあると反映されない
div[class~="name"]{color: red;}

属性の場合は、❶-1で行っています



❷-(3)完全一致(要素)

div[class] {color: red;}
div[class="name"]{color: red;}スペースハイフンがあると反映されない


<div class="name"></div>
に反映されます

属性の場合は、❶-1で行っています



❸両方一致に対して反映or複数の属性にかけたい

.name.gender{
 color: red;
}


or


.name{
 color: red;
}
.gender{
 color: red;
}
であれば
<div class="name gender"></div>
に反映されます



.name{
 color: red;
}
.gender{
 color: red;
}

or

.name,gender{
 color: red;
}
であれば
<div class="name"></div>
<div class="gender"></div>
or
<div class="**** name"></div>
<div class="**** gender"></div>
に反映されます


3.ここから学んだこと

よく".(ドット)"を抜けることがよくありました。
”検証”で反映できていないことを確認し、class名や記述ミスがないかをよく探していました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1