CSS opacityが効かない条件と回避方法
2020年11月18日
opacityは要素を透明、半透明にするCSSプロパティです。
しかし、ある条件によりopacityが効かなくなることがあります。
CSS opacityが効かない条件と回避方法を解説します。
opacityが効かない条件
opacityが効かないhtml例
<style>
a{
opacity: .5;
}
</style>
<a href="#">
<div>
<img src="https://csshtml.work/wp-content/uploads/1.jpg">
</div>
</a>
下記をchromeで見てみてください。透明になっていないかと思います。
CSS opacityが効かない条件は下記すべてを満たしたときです。
- chrome
- aタグとimgの間にタグがある
- aタグがインライン要素
逆にいうと解決方法は上記の条件を崩せばいいのです。
回避方法:aタグに「display:block」を指定
手っ取り早いのはaタグに「display:block」を指定してしまうことでしょう。
<style>
a{
opacity: .5;
/*コレ*/display: block;
}
</style>
<a href="#">
<div>
<img src="https://csshtml.work/wp-content/uploads/1.jpg" alt="">
</div>
</a>
下記をchromeで見てみてください。透明になったかと思います。
CSSやhtmlの基本をしっかり理解すると、この記事の内容もより理解できるようになりますよ。
↓CSSやhtmlを楽しく学べるようにマンガを描きましたのでゼヒご覧ください↓
↑「副業してもう少し稼ぎたい!」というかたのために副業の方法も解説しています。
その他の原因
スペルミスをしていたりCSSの優先度が負けているとCSSが効かない場合があります。下記を参考に見直してみてください。
【まとめ】CSS opacityが効かない条件と回避方法
opacityが効かない条件は下記すべてを満たしたとき
- chrome
- aタグとimgの間にタグがある
- aタグがインライン要素
回避方法
aタグに「display:block」を指定
以上、CSS opacityが効かない条件と回避方法でした。
「この記事の内容がよくわからなかった…」「なんかうまくいかなかった…」というかたは下記記事↓でhtmlとCSSの基本を学びましょう。
わからないまま突き進むより基本を学ぶのが結局近道です。