昨日こちらのサイトにてセレクタに関してアドバイスを頂き勉強を開始しております。
が書籍に乗っているセレクタ指定の部分が非常に少なくちょっと理解に困っており質問させていただきます。
前提・実現したいこと
h1の上にマウスが来たら左右にびよーんと二本の線が伸びる。
(初期状態では0pxでマウスオンで200pxにのびる区切りの線みたいなものです)
二本の線は画像にて準備しておりbackground-imageで書いている部分がそれに該当いたします。
昨日質問させいただいたときは今回よりもっとシンプルなhtml構造だったのですが少し複雑にしてみたところ動かなくなり書籍とググりながらで色々セレクタあたりをいじってトライしております。
該当のソースコード
html
1<!DOCTYPE html> 2<head> 3<meta charset="UTF-8"> 4<link rel="stylesheet" href="stylecss.css"> 5</head> 6<html> 7<body> 8<main> 9 <div class="one"> 10 <h1>サンプル1</h1> 11 </div> 12 <div class="two"> 13 <h2>サンプル2</h2> 14 </div> 15</main> 16</body> 17</html>
css
1*{ 2 padding: 0; 3 margin: 0; 4} 5 6 7main{ 8 height:1000px; 9} 10h1{ 11 display: inline-block; 12 width: 200px; 13} 14.one{ 15 text-align: center; 16} 17 h1::after, h1::before{ 18 content:""; 19 background-image: url(images/2color-border.png); 20 display: inline-block; 21 margin: 0 100px; 22 width: 0px; 23 height: 40px; 24 background-position-y: 20px; 25 background-repeat: no-repeat; 26 27transition-property: width; 28transition-duration: 0.5s; 29} 30main:hover h1::after, main:hover h1::before{ /*問題になっているコード部分だと思っています。結合子がわからないため空白にしています*/ 31 width: 200px; 32}
試したこと
『main:hover』と『.h1::after』の間
『main:hover』と『p::before』の間
この二つの間のつなぎ方が問題だと思えています。
書籍では結合子が>+~の3つしかでてこないのですがどれにしてもうまくいかないんです。
上記のコードの場合問題だと感じている部分のコードはどのようにしたらいいのでしょうか?
現状として画像で差し込んでいる二本の線はbeforeの画像(線の画像が)h1より上に出てきますがafterの画像で差し込んでいる線は全く見えない状態です。
というかなんでh1の上部にマウスオンの時に出てくるのかもわかってないです。
h1はインラインブロック化しております。でそのbeforeとafterで入れているんだから左右に出てくるんだと思っているのですが
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/04 07:01
2020/10/04 07:27 編集
2020/10/04 10:27
2020/10/04 10:29
2020/10/04 10:36