【レビュー】
|
Web Designer Wall is all about design, ideas, web trends, and tutorials. It is designed and maintained by Nick La, who also runs N.Design Studio, IconDock, and Best Web Gallery. |
CSS3 Rounded Image With jQueryにCSS3で提供されるborder-radiusを画像に適用するためのテクニックが紹介されている。CSS3が策定されたあとはブラウザが正しくレンダリングするようになることが好ましいが、それまでの過渡期的なテクニックとして参考になる。
CSS3 Rounded Image With jQueryでは画像に対してborder-radiusを適用して角を丸め、box-shadowを適用して影をつける効果を試している。しかし、Firefoxではborder-radiusが適用されず、Webkitではインナーシャドウが適用されない。たとえば次のようなHTMLを用意してFirefox 3.6.6で閲覧すると次のようになる。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Demo 01</title>
<style type="text/css">
.image {
border: solid 5px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
-moz-box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
-webkit-box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
}
</style>
</head>
<body>
<img class="image" src="watermelon.jpg"/>
</body>
</html>
なお、border-radiusは今のところベンダプレフィックスを指定して使う必要があるため、それぞれ-moz-border-radius、-webkit-border-radius、-moz-box-shadow、-webkit-box-shadowが併記されている。CSS3 Rounded Image With jQueryではこれに対して、画像をspan要素で包み、span要素の背景画像として表示したい画像を設定、さらに角の丸めやシャドーの指定をspan要素に適用するという方法で目的の達成を実現している。HTMLにまとめると次のようになる。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Demo 02</title>
<style type="text/css">
.around {
display: inline-block;
background: url(watermelon.jpg) no-repeat center center;
width: 220px;
height: 220px;
border: solid 5px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
-moz-box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
-webkit-box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
}
.image {
opacity: 0;
}
</style>
</head>
<body>
<span class="around">
<img class="image" src="watermelon.jpg" />
</span>
</body>
</html>
img要素はopacityを0にして表示されないようにしている。display:noneで表示させなくすることもできるが、画像のコピーやダウンロードが動作するようにopacityを0にする方法の方が便利だと説明がある。CSS3 Rounded Image With jQueryではさらにjQueryと若干のJavaScript記述を使って、このテクニックを自動的に適用する方法を紹介している。同テクニックを使うと画像サイズを手動で指定する必要がなくなるほか、HTMLにおいてspan要素を記述する必要がなくなるため、過渡期的なテクニックとして利用しやすくなる。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Demo 03</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".around").load(function() {
$(this).wrap(function(){
return '<span class="' + $(this).attr('class') + '" style="background: url(' + $(this).attr('src') + ') no-repeat center center; width: ' + $(this).width() + 'px; height: ' + $(this).height() + 'px; border: solid 5px;" />';
});
$(this).css("opacity","0");
});
});
</script>
<style type="text/css">
.around {
display: inline-block;
border: solid 5px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
-moz-box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
-webkit-box-shadow: 0 10px 50px rgba(0, 0, 0, .4);
}
</style>
</head>
<body>
<img class="around" src="watermelon.jpg" />
</body>
</html>
ブラウザが本来のレンダリングに対応したら該当するJavaScriptコードを削除するだけでいい。HTMLそのものに不要なレンダリング目的の要素を追加する必要がなく便利。
| CSS3で綺麗なドロップダウンメニューを作る方法 [2010/2/25] |
| かんたんで使いやすい5つのCSSプロパティ [2009/12/3] |
| 理研、脳・脊髄形成に必要な神経板湾曲の仕組みを解明 [20:16 5/25] |
| 京大、「慢性閉塞性肺疾患」患者の労作時呼吸困難は鍼治療が有効と実証 [20:08 5/25] |
| 120Hz SHVカメラ用イメージセンサーを使った撮像装置 - SHVフルスペック化へ [18:10 5/25] |
| 京大、視覚による物体認知は前頭前野からのトップダウン信号が重要と確認 [17:45 5/25] |
| 製品数の拡大だけでなくBCPの展開なども含めた総合力で事業の強化を図るTI [17:25 5/25] |
|
【レポート】「メガホビ EXPO 2012 SPRING」開催! ハイクオリティなフィギュアが多数展示される [14:50 5/27] ホビー |
|
AKB48の松原夏海「待ち遠しかった」 - 映画初主演作『骨壺』公開に感激 [14:30 5/27] エンタメ |
|
[ゲーム質問状]「ドラゴンズドグマ」 ゲームブックのドキドキ感を今の技術で [13:30 5/27] ホビー |
|
「デビルサバイバー」&「氷結鏡界」シリウスでマンガ化 [13:15 5/27] ホビー |
|
[SKE48]松井玲奈、17人ランクインで手応え「飛躍できている」 [13:12 5/27] ホビー |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。