どうも切り上げとか切り捨てとかの基準が、ブラウザによって違うみたいです。
http://iwb.jp/css/decimal-point/
こんなの初めて知ったわ。
何も知らない学生の時ですら、ピクセルに対して小数点なんてアホな値登録したことないんだから知らなくて当然なんだけど。。。
別に遊びで作ってるなら笑い話で済むんですが、仕事でこんなコード書かれるとさすがに笑えない。
なんで小数点を指定しようって思うのか、その思考が一番謎です。
Archive for 4 月, 2012
cssにおける小数点の扱い
Wordpressで画像をアップすると「フルサイズ」しか選択できない
GDライブラリが有効になっていないのが原因です。
GDを有効にすればOK。
確かPHP5.2以降はGDが標準で入っているので、新たに入れなくてもphp.iniで設定を有効にすれば問題ありません。
それ以前のバージョンの場合は、残念ながらインストールから始める必要があります。
レンタルサーバーとかだとだいたいのものが標準で入っているのでラクなんですが、専用サーバーやら独自サーバーは面倒ですね。
wordpressをインストールするとログイン画面が真っ白になる
前にも書いたことがあるんですが、これはその時とは違うパターンのお話。
以前は既に稼働していたものにプラグインを入れたことで真っ白になりましたが、今回はまずインストール後初めてのログイン画面が真っ白。
IDとパスを入れる画面は出てきますが、入力してログインすると真っ白になります。
いろいろ調べて以下の対策をやってみましたが全てダメ。
——————————–
・wp-config.phpをBOM付きのUTF-8で保存していないか確認
→改善なし
・wp-config.phpにdefine(’WP_DEBUG’, true);を追記
→全くエラーが表示されないので手がかりなし
・ページのソースを表示させる
→何も表示されない
——————————–
そこで、データベースも一旦テーブルを全部消して再インストールしてみましたがこれもダメ。
ほぼお手上げ状態だったんですが、1つ思い出したことがあったのでもう一度再インストール。
このインストールの時に「テーブル接頭辞」をこれまでと違うものにしたらちゃんと表示されました。
どうやら最初のインストール時の情報が残っているらしく、再インストール時はテーブル接頭辞を違うものにしないといけないみたいです。
画面真っ白問題の解決策としてはマイナーな部類かもしれないですが、1つの方法として。
wordpressでの表示フォントサイズ変更
プラグインで超手抜きでできないかと思って探してみました。
WP-chgFontSize
というわけで一応あったんですが、微妙に問題が。
このプラグインだと、文字サイズ「拡大」「縮小」の2種類の操作しかできないんですよね。
今回実装するページだと「小」「中」「大」の3つのボタンで切り替えるようになってるので、ボタン2つでは足りない。
他のプラグインを探してもそんなに良さげなものはありませんでした。需要ないのかな。
これ以上探すよりはjavascriptで切り替えたほうが全然簡単そうなのでそっちにします。
デザイン決まってなければ別にボタン2つでもいいんだけどな・・・。
FFFTPで.htaccessや.htpasswdが表示されない
なんか初めての現象だったんですが、あるサーバーにFFFTPを使ってアクセスして.htaccessファイルを置いたら、転送された形跡はあるのに表示されませんでした。
何回アップしても見えない.htaccess。
DirectoryIndexを変なファイル名に変えるとエラーになるので、とりあえず.htaccessは存在はしてちゃんと動作してるっぽい。
念のためsshで覗いてみたらちゃんとありました。
サーバーの設定なのかどうなのか分かりませんが、次の手順を実行したら見えるようになったのでメモっておきます。
1.ホスト一覧画面で、該当のホストを選ぶ
2.設定変更→「高度」のタブを開く
3.「LISTコマンドでファイル一覧を取得」のチェックを外す
とりあえずこれで見れました。
察するに、「LISTコマンドでファイル一覧を取得」のチェックが入ったままだと、オプションなしのlistコマンドが実行されるから.htaccessや.htpasswdが出ないんじゃないかと。
でも、他のサーバーではこのチェックが入ってても表示されるんだよなあ・・・。
正直よく分かんないです。見れればいいや。
JavascriptでIE判定
自分用メモ。
——————————–
//UAとバージョンを小文字で取得
var userAgent = window.navigator.userAgent.toLowerCase();
var appVersion = window.navigator.appVersion.toLowerCase();
if (userAgent.indexOf(”msie”) != -1) {
if (appVersion.indexOf(”msie 6.”) != -1) {
//IE6の時の処理
} else if (appVersion.indexOf(”msie 7.”) != -1) {
//IE7のときの処理
} else if (appVersion.indexOf(”msie 8.”) != -1) {
//IE7のときの処理
} else if (appVersion.indexOf(”msie 9.”) != [...]
IE9.jsを導入するとCSSハックが一部効かなくなる件。
IE9.jsは旧IEの表示を調整してくれる良いライブラリなんですが、微妙に面倒事が起こることもあります。
例えば、CSSハックが効かなくなる。
* html
とか
*:first-child+html
が効かなくなります。
最初からCSSハック使うような組み方すんじゃねーよっていうのはもっともなんですが、俺が作ったんじゃないし。他の人が組んだの修正してるんだし。
仕方ないので、IE7のハックはこっちを使いました。
*+html
・・・なぜかこれは効くんだよね。
Wordpressの記事内容をエクスポートする「Export to Text」
最近、大量の細かいテキストデータをどっかにおいて分類する必要に迫られたのでwordpressを使うことにしました。
wikiとか別のシステムとかの選択肢も当然あるとは思うんですが、
・別に秘匿性のあるデータじゃないのでどうせならWebで公開したい
・分類は厳密にしないといけないわけじゃなくある程度ユルくていい。むしろそのほうがいい
という事情があったので、Web上で公開できつつ気ままにタグがつけられるwordpressにしました。使い慣れてるし。
が、問題は投稿したデータのエクスポート。
他のとこでこのデータを再利用したいので、分類ごとにデータをエクスポートしたい。
元々wordpressにはエクスポート機能がありますが、デフォルトだとxmlで吐き出されます。
xmlのパーサーは作れなくもないけど、果てしなく面倒くさい。
そこで便利そうなプラグインを探してみたところ、行き当たったのがこれ。
Export to Text
http://wordpress.org/extend/plugins/export-to-text/
投稿ユーザー、タグ、カテゴリなど様々な条件を設定して抽出した記事を、テキスト形式(と言ってもCSVと同じ感じ)で吐き出すことが可能。
csvにかなり近いので後の加工もラクです。素晴らしい。
まだ使い始めですが、これは今後もすごい使えそうです。
IE9.jsが勝手にクラスを付与してしまう
IE9.jsを使うと古いIEの挙動をW3C準拠にしてくれるので大変便利です。
が、あまり調子に乗って使っているとたまに妙なバグに出会うことも。
ある要素をクリックするとaddClassでクラスを付与し、もう一度クリックするとremoveClassでクラスを取り除くような切り替えスイッチを作ったんですが、どうも背景画像周りの動作がうまくいかない。
そこで、うまくいかない部分のclass名を取得して吐き出してみました。すると、
added ie7_class0
という表示。
「added」はaddClassで追加したものなので大丈夫です。それより問題は、追加した覚えのない謎の「ie7_class0」。
これ、気になったので他の部分でもクリック時のクラスを出してみると、「ie7_class4」など他のパターンもありました。
どうもこのよく分からない追加クラスがbackground-imageを独自に持ってしまっていて、そのままでは背景画像がきちんと表示されないようです。
こいつらの取り除き方が分からなかったので、結局実装方針をちょっと変えることで対応しました。
IE9.jsは便利だけど、JS結構使うサイトだと意味不明な不具合が起こるかもしれないので気を付けましょう。
IEの動きをW3C標準に近づけるIE9.js
・IE9.js
IE5.5~IE8の間の様々な制約やバグを解決、というか矯正してくれます。
べんり。