headerの高さを超えた時にborderの色を変更したいです。
addClassとremoveClassで.colorの付け外しをしたいのですが、反映されません。
どこが間違っているかご指摘お願いいたします。
HTML
1<header class="site-header"> 2 <ul class="header-list"> 3 <li><a href="#item-section" style="text-decoration:none;" class="header-link">ITEMS</a></li> 4 <li><a href="#sns-section" style="text-decoration:none;" class="header-link">SNS</a></li> 5 <li><a href="#shop-section" style="text-decoration:none;" class="header-link">SHOP</a></li> 6 <li><a href="#map-section" style="text-decoration:none;" class="header-link">MAP</a></li> 7 <li><a href="#" style="text-decoration: none;" class="header-link lang">Italy</a></li> 8 </ul> 9</header> 10<section class="top"> 11 <div class="top-img"> 12 <img src="img/dounuts_logo3.png" alt="ロゴ"> 13 </div> 14</section> 15 16<section class="message semicircle"> 17 <div class="message-z"> 18 <h1>from Dounut's Pop</h1> 19 <div class="message-center"> 20 <div class="message-p"> 21 <p class="messa">テキスト</p> 22 <p class="messa">テキスト</p> 23 <p class="messa">テキスト</p> 24 <p class="messa messa-main">メインテキスト!</p> 25 </div><!--message-p--> 26 </div><!--message-center--> 27</div> 28</section> 29
CSS
1/*ヘッダー*/ 2header { 3 position: relative; 4 height: 56px; 5 position: fixed; 6 top: 0; 7 right: 0; 8 transition: 0.5s; 9 z-index: 100; 10} 11.site-header { 12 display: flex; 13 justify-content: space-between; 14 width: 100%; 15 line-height: 56px; 16} 17.site-header a { 18 color: #fff; 19 font-size: 20px; 20 transition: 0.5s; 21 font-weight: bold; 22 font-family: 'Hiragino Kaku Gothic Std','arial black'; 23} 24.site-header.change-color a { 25 color: #574643; 26 font-size: 20px; 27 transition: 0.5s; 28 background-color: rgba(255, 255, 255, 0); 29} 30.header-list { 31 display: flex; 32 list-style: none; 33} 34.header-list li a { 35 font-size: 20px; 36} 37.header-link { 38 margin-right: 32px; 39} 40.header-link.change-color{ 41 margin-right: 32px; 42} 43.lang { 44 border: solid 2px #fff; 45 padding: 4px; 46 margin-right: 32px; 47 font-size: 25px; 48} 49.lang.color { 50 border: solid 2px #574643!important; 51 padding: 4px; 52 margin-right: 32px; 53 font-size: 30px; 54} 55/*ヘッダーの変更後の背景*/ 56.change-color { 57 background-color: rgba(255, 255, 255, 0.753); 58 transition: 0.5s; 59} 60/*トップ*/ 61.top { 62 background-image: url(img/sample/4507419_s.png); 63 background-size: cover; 64 height: 100%; 65 width: 100%; 66} 67.top-img { 68 text-align: center; 69 width: 100%; 70} 71.top-img img { 72 background-color: rgba(255, 255, 255, 0.733); 73 width: 30%; 74 padding: 48px; 75 border-radius: 56px; 76 margin: 160px 0; 77} 78/*メッセージ*/ 79.message-z { 80 z-index: 1; 81} 82.message-p p { 83 color: #574643; 84} 85.message-center { 86 margin: 0 auto; 87 padding: 16px 16px; 88 position: relative; 89 z-index: 10; /* 追加 */ 90 background: none; 91 text-transform: uppercase; 92 z-index: 10; 93} 94.message-center::after { 95 position: absolute; 96 top: 16px; 97 left: -16px; 98 content: ""; 99 height: 100%; 100 width: 100%; 101 z-index: -999; 102 background-color: #f8e6e6; 103 padding: 24px 32px; 104} 105.message-center::before { 106 position: absolute; 107 border: 1px solid #ff7177; 108 content: ""; 109 top: 0px; 110 left: 0px; 111 height: 100%; 112 width: 100%; 113 z-index: -998; /* afterの数値より上にする */ 114 padding: 24px 32px; 115} 116.message-center { 117 width: 40%; 118} 119.message-center img { 120 width: 30%; 121} 122.message-img { 123 text-align: right; 124 margin-top: -80px; 125} 126.message-p{ 127 font-size: 15px; 128 padding: 24px 32px; 129 line-height: 1.5; 130} 131.messa { 132 margin-bottom: 24px; 133} 134.messa-main { 135 font-size: 28px; 136}
jQuery
1/*スクロールでヘッダーの背景色変更*/ 2jQuery(window).on('scroll', function () { 3 4 if ($('header').height() < $(this).scrollTop()) { 5 $('header').addClass('change-color'); 6 $('lang').addClass('color'); 7}else { 8 $('header').removeClass('change-color'); 9 $('lang').removeClass('color'); 10} });
回答1件
あなたの回答
tips
プレビュー