2006年03月19日
画像ポップアップ、カレンダー休日表示
今回は以下の二つのカスタマイズに挑戦してました。参考サイトは勿論小粋空間さんです![]()
① Lightbox JS でブログパーツ等の Flash を PNG 背景画像の下に隠す
② 休日表示付リアルタイムカレンダー(Movable Type)
①はポップアップした画像がFlashの下に隠れてしまう現象を解消するものです。実際に試してみましたが、今までとは逆にFlashが画像に隠れるようになりました!ただし、Flashの起動に問題が発生しました。それは「ブラウザー上にFlashが表示されていなければ起動しない。」と言う事です。スクロールして一部でも見えると起動し始めるのですが・・・と言う事で、とりあえず現在通常通りの表示方法に戻しています。
②ですが、久しぶりにはまってしまいました![]()
まずはJavaScript絡みのスタイルシートの設定。
今回の休日表示はJavaScriptで日付と土日祝日の色を判定しているんですが、その色をスタイルシートで指定する必要があります。小粋空間さんの方法で指定してみましたが、どう言う訳か上手く表示できない。色々悩んだ末、以下のようにしてみました。
.red,
.red a {
color: #e50003 !important;
text-decoration: none !important;
}
.red a:hover {
text-decoration: none;
position:relative; top:1px; left:1px;
}
.blue,
.blue a {
color: blue !important;
text-decoration: none !important;
}
.blue a:hover {
text-decoration: none;
position:relative; top:1px; left:1px;
}
aを指定したのは、土日祝のリンクに有無を言わせず下線が付く為で、text-decorationでnoneを指定し、!importantで強制的に消した訳です。また、colorも通常のリンク色になってしまうので、!importantを付加しています。a:hoverはお遊び半分と、リンクしていても強制的に土日祝色になるようにしている為、沈ませてリンクしている事を解るようにしています![]()
もう一つは(当サイトは月送りタイプ)カスタマイズを実行した際、すべての月が今月(2006/3)になってしまった事です![]()
原因を探ってみると、ちょっとしたミスを発見しました。それは、MTタグの指定を今月のみの取得方法にしていた事です。
<table summary="<MTDate format="%Y/%m">">
月送りですから、以下のようにしなければいけない。
<table summary="<MTArchiveDate format="%Y/%m">">
これで完成です![]()
画像のポップアップの件で一つ思い出した事が。
Operaでは"iframe"を利用しているページで別の問題があります。それはFlashと同じように"iframe"の下に画像が隠れてしまうのです。言ってみれば"iframe"は現在のページの下に表示しているようなもの。何故画像が隠れるんでしょう![]()