web.londoner25.net
clearfixについて
- 2010年12月30日 12:29 AM
- 未分類
今まで自分はfloatのクリアをする場合、一般的なclearfixのコードの冗長さが嫌いで、overflow: hiddenすることが多かったのですが、それでは印刷する場合に不具合が出たり、要素をボックスの外にはみ出させたい場合にはみ出した部分が表示されなくなってしまう不都合が生じるので、最適な方法は何かと考えていました。
以前から知ってはいましたが、冗長なコードとそもそもclass=”clearfix”自体が好みではなかったので、知識として把握していただけだった現在のブラウザ事情に最適化されたclearfixを採用することにしました。
一般的な前時代的なclearfixは以下のように冗長でちょっと気持ちの悪いコードです。
(注:下記以外にも違う書き方はあります)
.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
.clearfix {
min-height: 1px;
}
* html .clearfix {
height: 1px;
/*¥*//*/
height: auto;
overflow: hidden;
/**/
}
前時代的なclearfixは古すぎるブラウザ(ネスケやIE6未満のもの)も対象にしているせいでこんなに冗長になっています。IE6以降とモダンブラウザのみに対象を絞れば以下の簡潔なコード(ハック含む)で済むようです。
element{ /zoom : 1; } element:after{ content : ''; display : block; clear : both; height:0; }
詳しい解説は引用元を参照してください。引用なので原文のままにしており、前時代的なものとはクラス名が違うことにご注意ください。
上記のコードでIE6以降のブラウザやモダンブラウザはカバー出来ていますのでこのコードで十分です。
現時点では一番リスクが少ない方法と言えるかなと思います。
とはいえ、モダンなclearfixでもハックを使っているように、完璧なclearfixの仕方というのは現状存在しないので、clearfixを使うか、overflow:hiddenを使うかは好みの問題と言えそうです。
overflow:hiddenはclearfix以外にもコーディングのディティールに関する問題で使い勝手のいい働きをしてくれるので、割と好みですし、使い時さえ間違わなければclearfixの代替方法として使えると思っています。
clearfixの方法の一つとしてメモを残しておきます。
サブドメイン運用のGoogle XML Sitemapsプラグインのマルチサイト対応方法
- 2010年10月27日 8:11 PM
- 未分類
このサイトをWordPress 3.0にアップグレードし、このブログを作って以来悩み続けていた問題がようやく解決しました。
解決したので、今後この情報を探すことはないでしょうが、念のため備忘録として残します。
参考サイトと大まかな手順は以下の通りです。
- プラグインを編集
- .htaccessにrewrite ruleを記述
- プラグインを有効にして、xmlファイルのありかを指定
プラグインを編集
Google XML Sitemapsはデフォルトでマルチサイトをサポートしていないので、WPをマルチサイト運用するとエラーメッセージが出力されますので、これを消すことから始めます。
対象のコードはwp-content/plugins/google-sitemap-generator/sitemap.phpの53行目あたりにあるので、その部分をまるっとコメントアウトします。
//Check for 3.0 multisite, NOT supported yet!
//if((defined('WP_ALLOW_MULTISITE') && WP_ALLOW_MULTISITE) || (function_exists('is_multisite') && is_multisite())) {
//if(function_exists('is_super_admin') && is_super_admin()) {
//add_action('admin_notices', array('GoogleSitemapGeneratorLoader', 'AddMultisiteWarning'));
//}
//return;
//}
.htaccessにrewrite ruleを記述
RewriteRule ^sitemap.xml sitemap-%{SERVER_NAME}.xml [L]
RewriteRule ^sitemap.xml.gz sitemap-%{SERVER_NAME}.xml.gz [L]
プラグインを有効にして、xmlファイルのありかを指定
プラグインを有効にし、設定画面からサイトマップファイルの生成先とサイトマップファイルの完全なURLを指定します。
参考サイトの例では手動配置していますが、自動配置の場合でもsitemap-(サブドメイン).xmlを入力してやれば問題なく配置してくれるようです。(Core Serverの場合)

後はブラウザで表示されるか確認し、Googleウェブマスターツールに登録すれば全て完了です。
JS読書会に参加しました
- 2010年10月10日 2:11 AM
- 未分類
オライリーのJavaScript: The Good Partsをみんなで読んで勉強する、JS読書会に参加してきました。
続きを読む
ドットコーダーセッション3でマークアップしたHTML5の自己解説
- 2010年9月20日 9:51 PM
- 未分類
ドットコーダーセッション3に参加しました
- 2010年8月30日 7:10 PM
- 未分類
- 検索
- フィード
- メタ情報