[CSSチュートリアル】CSS複合セレクタの具体的な使用方法
交差点セレクタ
交差点セレクタは、2つのセレクタを直接つなげたもので、最初のセレクタは要素セレクタ、2番目のセレクタはクラスセレクタまたはIDセレクタでなければならず、2つのセレクタはスペースなしで連続的に記述しなければなりません。
交差セレクタで選択される要素は、第一セレクタで指定された要素タイプであり、その要素に第二セレクタに対応するID名またはクラス名が含まれていなければならない。交差点セレクタで選択された要素のスタイルは、3つのセレクタのスタイル、すなわち、最初のセレクタ;
構文
{
...
// event source (SQS queue)
"sqsq" : {
"Type" : "AWS::SQS::Queue" ,
"Properties" : {
"DelaySeconds" : 0 ,
"MaximumMessageSize" : 262144 ,
"MessageRetentionPeriod" : 345600 ,
"QueueName" : "q" ,
"ReceiveMessageWaitTimeSeconds" : 0 ,
"VisibilityTimeout" : 30
}
},
// event target (Lambda function)
"tikjs" : {
"Type" : "AWS::Lambda::Function" ,
"Properties" : {
"FunctionName" : "tikjs" ,
"Description" : "Invokes functions defined in \ tik/js.js in project tik. Generated by Sigma.",
...
}
},
// function execution role that allows it (Lambda service)
// to query SQS and remove read messages
"tikjsExecutionRole" : {
"Type" : "AWS::IAM::Role" ,
"Properties" : {
"ManagedPolicyArns" : [
"arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
],
"AssumeRolePolicyDocument" : {
"Version" : "2012-10-17" ,
"Statement" : [
{
"Action" : [ {
"sts:AssumeRole"
],
"Effect" : "Allow" ,
"Principal" : {
"Service" : [
"lambda.amazonaws.com"
]
}
}
]
},
"Policies" : [
{
"PolicyName" : "tikjsPolicy" ,
"PolicyDocument" : {
"Statement" : [
{
"Effect" : "Allow" ,
"Action" : [
"sqs:GetQueueAttributes" ,
"sqs:ReceiveMessage" ,
"sqs:DeleteMessage"
],
"Resource" : {
"Fn::GetAtt" : [
"sqsq" ,
"Arn"
]
}
}
]
}
}
]
}
},
// the actual event source mapping (SQS queue -> Lambda)
"sqsqTriggertikjs0" : {
"Type" : "AWS::Lambda::EventSourceMapping" ,
"Properties" : {
"BatchSize" : "10" ,
"EventSourceArn" : {
"Fn::GetAtt" : [
"sqsq" ,
"Arn"
]
},
"FunctionName" : {
"Ref" : "tikjs"
}
}
},
// grants permission for SQS service to invoke the Lambda
// when messages are available in our queue
"sqsqPermissiontikjs" : {
"Type" : "AWS::Lambda::Permission" ,
"Properties" : {
構文説明:"クラスセレクタ|IDセレクタ"は、クラスセレクタを使用するかIDセレクタを使用するかを意味します。
例
The event source arn (aaa) and function (bbb) provided mapping already exists. Please update or delete the existing mapping...
連結セレクタ
連結セレクタは、グループセレクタやクラスタセレクタとも呼ばれ、2つ以上の任意のセレクタを","で区切って構成し、複数のセレクタを"一括宣言"できるようにしたものである。
連結型セレクタの特徴は、スタイル・セットが連結型セレクタ内の各セレクタに対して有効であることです。
連結セレクタの効果は、異なるセレクタから同じスタイルを抽出して1つの定義にまとめることで、CSSのコード量を簡略化できることである。
構文
aws-cli
構文上の注意:セレクタは、基本セレクタでも複合セレクタでも、どのようなタイプでもかまいません。
例
event
後付けセレクタ
子孫セレクタは、含有セレクタとも呼ばれ、指定した要素の子孫である要素を選択するために使用されます。子孫セレクタを使うことで、目的の要素をより早く、より正確に見つけることができます。
構文
selector 1 selector 2 selector 3 {
attribute 1: attribute value 1.
attribute 2: attribute value 2.
}
例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title> Set styles using descendant selectors </title>
<style>
#box1 .p1 { /* descendant selector */
background:#CCC;
}
#box2 p { /* descendant selector */
background:#CFC;
}
</style>
</head>
<body>
<div id="box1">
<p class="p1"> Paragraph 1 </p>
<p class="p2"> Paragraph two </p>
</div>
<div id="box2">
<p class="p1"> Paragraph three </p>
<p> Paragraph four </p>
</div>
<p class="p1"> 段落五 </p>
<p> Paragraph six </p>
</body>
</html>
子要素セレクタ
子孫セレクタは、ある要素で指定された型のすべての子孫要素を選択します。ある要素のすべての子要素のみを選択したい場合は、子要素セレクタを使用する必要があります。
構文
selector 1> selector 2 {
attribute 1: attribute value 1;
attribute 2: attribute value 2;
}
構文上の注意:">"は左結合文字と呼ばれ、その左右にスペースを持つことができます。"セレクタ 1> セレクタ 2" は "selector 1 で指定したセレクタ2の要素をすべて選択します"という意味です。
例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title> Example of child element selector application </title>
<style>
h1>span {
color:red;
}
</style>
</head>
<body>
<h1> This is a very, very <span> important </span> and <span> critical </span> step. </h1>
<h1> This is really a very <em><span> important </span> and <span> critical </span></em> step. </h1>
</body>
</html>
隣接兄弟セレクタ
同じ親を持つ要素の直後にある要素を選択する必要がある場合、隣接兄弟セレクタを使用することができます。
構文
selector 1+ selector 2 {
attribute 1: attribute value 1;
attribute 2: attribute value 2;
}
例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title> Adjacent Sibling Selector Application Example </title>
<style>
h1+p {
color:red;
font-weight:bold;
margin-top:50px;
}
p+p{
color:blue;
text-decoration:underline;
}
</style>
</head>
<body>
<h1> This is a first-level heading </h1>
<p> This is paragraph 1. </p>
<p> This is paragraph 2. </p>
<p> This is paragraph 3. </p>
</body>
</html>
属性セレクタ
CSSでは、要素をその属性とその値に基づいて選択することもでき、これを属性セレクタと呼びます。属性セレクタには、大きく分けて
構文があります。
attribute selector 1 attribute selector 2... {
attribute 1: attribute value 1;
attribute 2: attribute value 2;
}
element selector attribute selector 1 attribute selector 2... {
Attribute 1: Attribute value 1;
attribute 2: attribute value 2;
}
構文上の注意:属性セレクタは [ 属性式 ] と記述します。属性式はプロパティ名または "attribute = 属性値" のような式になります。
プロパティセレクタの応用
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title> Application of attribute selectors </title
<style>
[title] {/* selects elements with the title attribute */
color: #F6F;
}
a[href][title]{/* selects a element with both href and title attributes */
font-size: 36px;
}
img[alt] {/* selects the img element with the alt attribute */
border: 3px #f00 solid;
}
p[align="center"] {/* selects the p element with align attribute equal to center */
color: red;
font-weight: bolder;
}
</style>
</head>
<body>
<h2> Apply attribute selector style: </h2>
<h3 title="Helloworld">Helloworld</h3>
<a title=" Home "href="#"> Return to Home </a><br/><br/>
<img src="miaov.jpg" alt="logo" />
<p align="center"> paragraph one </p>
<hr />
<h2> No attribute selector style applied
<h3> Helloworld</h3>
<a href="#"> Return to home page </a><br/><br/>
<img src="miaov.jpg">
<p align="right"> Paragraph 2 </p>
</body>
</html>
今回はCSS複合セレクタの具体的な使い方についてご紹介しましたが、より関連するCSS複合セレクタの内容は、スクリプトハウスの過去記事を検索するか、以下の関連記事を引き続きご覧ください、今後ともスクリプトハウスをどうぞよろしくお願いいたします
関連
-
[CSSチュートリアル】よくある2D変換を5つ実現するCSS
-
[CSSチュートリアル】CSSスコープ(スタイル分割)の使い方まとめ
-
[CSSチュートリアル】position:stickyでトップ吸い上げアプレット問題を完璧に解決
-
[CSSチュートリアル】ボックス内の複数要素を両端揃えの効果で実現するCSS
-
[CSSチュートリアル】CSSで炎のエフェクトを記述する方法
-
[CSSチュートリアル】CSSプリグラミング言語と詳細解説の違いについて
-
[CSSチュートリアル]CSSのボーダーの半分または部分的に見えるコードは、ボーダーを達成するために
-
[CSSチュートリアル】BlazorでCSSを分離する
-
[CSSチュートリアル]スクロールバーを非表示にし、サンプルコードの内容をスクロールすることができますするCSS
-
左上または右上にリマインダーのドットを表示するCSS3サンプルコード[CSSチュートリアル
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[CSSチュートリアル】CSSアニメーション 途中で止める方法とポーズを維持する方法
-
[CSS3] CSS3リスト無限スクロール/回転効果
-
[CSSチュートリアル]css display table adaptive height, widthの問題解決
-
[CSSチュートリアル】CSSで実現するイメージマッピングメソッド
-
[CSSチュートリアル】タイトルを上部に配置するスティッキーレイアウトを実現するためのCSS
-
[CSSチュートリアル]モバイルにおけるviewportの具体的な使い方
-
cssにおけるpx, em, rem, ptの特徴や違い、変換の詳細について
-
[CSSチュートリアル]フレックス内のボタンを縦に中央寄せにしない意外な解決法
-
[CSSチュートリアル】CSS疑似要素を使って、連続する複数の要素のスタイルを制御する
-
[CSSチュートリアル]純粋なCSSは、効果を引き出すために、ページ内のリストを達成するために