<div class="box">
<p class="img">
<img src="hogehoge.png" alt="hoge" />
</p>
<p class="title">
テストテキストです。
</p>
</div>
<style>
.box{
width: 80px;
height: 80px;
position: relative;
}
.img{
width: 100%;
height: 100%;
position: relative;
}
.img:after{
width: 100%;
height: 100%;
position: absolute;
content: '';
display: block;
top: 0;
right: 0;
background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(51,51,51,0) 35%, rgba(51,51,51,0.2) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(51,51,51,0) 35%,rgba(51,51,51,0.2) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(51,51,51,0) 35%,rgba(51,51,51,0.2) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#33333333',GradientType=0 );
}
.title{
width: 100%;
position: absolute;
left: 0;
bottom: 0;
}
</style>
CSSで画像を背景にしたキャッチパートなどを作る際に、テキスト文字を見やすくする方法です。やってることは簡単で、画像の議事要素(after)で透明グラデーションを画像の上から乗せて、その上にテキストを乗せてます。今回は、下から生えるグラデーションなので、文字は下にしています。