Amazonさんのリンクを作るときはブックマークレット「amazlet」を活用させてもらっています。
amazlet (jp) via kwout
シンプル
好みです。ただ、ストイックまでにシンブル!です。スタイルシートのクラスが定義してもらってあり、自由にカスタマイズする方式です。
やってみたら、いい感じにカスタマイズできました。
アソシエイトに関するカスタマイズです。規約には触れていないつもりですが、触れているかもしれません。カスタマイズに関しては自己責任にてよろしくお願いします。
スタイルシートの書き方がいまいちなところなどは、暖かくそっと見守ってください。
スタイルシート
「amazlet」にて生成されるリンクコードには、9つのクラスが定義されています。
- class=”amazlet-box”
- class=”amazlet-image”
- class=”amazlet-info”
- class=”amazlet-name”
- class=”amazlet-powered-date”
- class=”amazlet-detail”
- class=”amazlet-sub-info”
- class=”amazlet-link”
- class=”amazlet-footer”
“amazlet-box”
全体を囲っています。style=”margin-bottom: 0px;”がインラインで定義されていることに注意です。スタイルシートにmarginを記述しても無視されます。
“amazlet-image”
画像を囲っています。インラインで float と marginが定義されています。同じく注意が要ります。
“amazlet-info”
画像右の文字列を囲っています。”line-height: 120%; margin-bottom: 10px;”がインラインで定義済みです。
“amazlet-name”
商品名のリンク aタグを囲っています。”margin-bottom: 10px; line-height: 120%;”が定義済みです。
“amazlet-powered-date”
amazletのリンクとアソシエイトリンク作成日を囲っています。style=”font-size: 80%; margin-top: 5px; line-height: 120%;”が定義済みです。
“amazlet-detail”
販売会社名や売上ランキングを囲っています。
“amazlet-sub-info”
アマゾンリンクと使っていないfooterを囲っています。”float: left;”が定義済みです。
class=”amazlet-link”
「アマゾンで詳細を見る」リンクです。一番大切です。”margin-top: 5px;”が定義済みです。
“amazlet-footer”
回り込み解除のためにある?のかなと理解しました。”clear: left;”があるから、たぶん。
目標
スタイルシートのクラス構造が見えたので、カスタマイズします。目標は3つです。
- 商品名を目立たせたい!
- 「アマゾンで詳細を見る」リンクは”ボタン” にしたい!
- 全体に余白を作り見やすくしたい!
ものくろぼっくすのモバイルページは WP touch を使っています。なので、PC用とモバイル用と、2つのスタイルシートをカスタマイズしました。
商品名を目立たせたい!
.amazlet-nameクラス aタグ に font-size 120% を設定しました。一緒に”amazlet”の文字も大きくなったので、amazlet-powered-dateクラス aタグ にfont-size 80% を設定しました。
アマゾンリンクを”ボタン”にする
CSS画像置換を使いました。「-9999px」を使う方法や背景画像(background:url)での置換を行わずに、画像そのものを配置する方法を採りました。
:before 擬似要素を使っているので、IE7以前では動作しない問題がありますが、使うメリットの方が大きいので使っちゃいました。気になる場合は-9999pxの手法がいいかなと思います。
このやり方が優れているのは、CSSスプライトを使ってhoverの挙動も簡単にコントロールできる点です。PC表示に使っています。モバイルのWP touchではそもそもhoverという動作がないため省略しています。
全体に余白を作る
marginが元からインラインで使われているので、paddingを使って設定しました。amazlet-box クラスに、padding: 30px 0 50px 30pxとしています。もちろん距離感は大切です。一番いい感じになるように調整してください。
ボタン画像はどうする?
著作権など気を遣う部分です。Amazonさんが準備している素材をそのまま使いました。
「Amazon.co.jp へのリンク用にボタンをご用意しました。」と案内されているので、改変しなければ良いはず。CSSスプライトに使える様にだけ調整しました。
スタイルシート PC 表示
[css]
/* amazlet start */
.amazlet-box { padding: 30px 0 50px 30px; }
.amazlet-name a { font-size: 120% ; }
.amazlet-powered-date a { font-size: 80% ;}
.amazlet-sub-info{ margin: 20px;}
.amazlet-link a {
display: block;
overflow: hidden;
width: 164px;
height: 26px;
}
.amazlet-link a:before {
display: inline-block;
content: url( ‘amazon_css.png’ );
}
.amazlet-link a:hover {
background-position-y: -26px;
}
.amazlet-link a:hover:before {
margin-top: -26px;
}
/* amazlet end */
[/css]
スタイルシートモバイル(WP touch)
[css]
/* amazlet wp start */
.amazlet-link a {
display: block;
overflow: hidden;
width: 164px;
height: 26px;
}
.amazlet-link a:before {
display: inline-block;
content: url( ‘amazon.png’ );
}
/* amazlet wp end */
[/css]
画像URLは環境に合わせて書き直してください。
参考記事
画像置換のテクニック、参考なりました。感謝です。
CSS3 リファレンス [Kindle版]
売り上げランキング: 4,072