to be continued ~とあるプログラマーの実験的開発日誌~ -3ページ目

to be continued ~とあるプログラマーの実験的開発日誌~

WEBデザイナー兼プログラマーである管理人が日々のトラブル解決に向けて奮闘する開発日誌。

過日、古いパソコン(LENOVO ThinnkCentre 8702-4kj)を譲り受けたので、
早速、予備のマシンとして繋いでみた。
メインのPCとのLAN接続も問題なく、Windows Update(OSはXP)も済ませたのだが、
以前の使用者のファイル等が残っていたため、
どうせならクリーンインストールして使用することに。

このシリーズは外部ディスクを使用しないため、
ハードディスク内のリカバリー設定から工場出荷状態に戻した。
ところが、これがまずかった。

まずルータを通してインターネットには接続できるのだが、
LAN経由での共有が一切できない。
ネットワーク接続をセットアップしてもダメ。
どうもWindowsが古いせいではないかと当たりをつけて、
Windows Updateを試みるが、
[エラー番号: 0x80244019]となって実行できない。
しかも、まともに表示されないページが続出する始末。

どうやら出荷状態まで戻したため、
Windowsが古くなり過ぎて、Updateでは対応しなくなったようだ。
さすが天下のMicrosoft。古いPCユーザーなど存在しないも同然ということらしい。
仕方がないので こちらのページから手動でスタンドアロン版の
Windows XP SP3をダウンロードしてインストールするにしたのだが、
このページも上手く表示されない。
メインのPCで落としてUSBメモリで移し変えてようやくインストールできる状態に。
無事、SP3をインストールしたことでWindows Updateも利用できるようになった。
その後、プリインストールされていたファイアウォールソフトを停止して、
LAN接続も何とか再開。
古いPCをリカバリーする時はこんな落とし穴があるという話。

5月18日以降、アメブロのジャンルが変更された。
人気のない(参加者の少ない)ジャンルは削除され、
人気のあるジャンルはより細分化された印象を受ける。
私も別ブログで2つジャンルに参加していたのだが、
そのうちの上位にランキングされていた方の
ジャンルが削除されてしまった。
新たに追加された中には変わりになりそうな
ジャンルは見当たらないので、
当面は残ったのジャンルだけでいくことにした。
果たして上位ランクのジャンルがなくなったことの影響が
どう出るのか、しばらく見守ることになりそうだ。
先日来、メインブラウザであるOperaと併用して
Firefoxを使用するようになった経緯をお伝えしてきたが、
実はFirefoxを使い始めて、いくつかの自サイトで
レイアウト崩れがあることに気づいた。

原因を調べてみると、要するに単純な記述ミスで、
複数の入れ子状態のDIVタグの閉じ忘れであることが判明。
開設時には複数ブラウザで表示確認をしているので、
その後、細かな修正をしているうちに抜け落ちてしまったらしい。
問題なのは、Operaではこうした記述ミスがブラウザ側で補完されてしまい、
ずっと気づかずにいたことだ。
すなわち、FirefoxやIEで訪れた人には崩れたレイアウトのまま、
放置していたわけだ。
正しく表示されることが、実は異常だったという、何ともおかしな自体。
ブラウザ側で記述ミスを補完し正しくレンダリングしてくれるのは、
一見便利な機能のように思えるが、
我々のようにWEBサイトを構築する側からすると迷惑この上ない。
前述したように、ミスがあっても気づかないためである。
改めて複数のブラウザでチェックする重要性を痛感した。

似たようなことで、FirefoxやIEでは正しく表示されるのに、
Operaではレイアウトが崩れるといった事態にも遭った。
こちらの原因は、記述ミスというよりブラウザ毎の特性の違いのようで、
ブロック要素内に収まりきらない長い英単語や文字列が
含まれていたために起こった現象だった。
通常、英単語などは単語の区切りで改行されるので、
一単語がブロック幅以上だとはみ出るのだが、
FirefoxやIEではCSSで指定しなくても自動改行される仕様のようだ。
※バージョンによって仕様の違いがあるかも知れない。
CSSで該当するブロック要素に、
「word-wrap:break-word;」を記述して無事解決。

さらにはFirefoxだけでscriptタブの一部が
表示されてしまうという不具合も発生。
この原因はHTMLのコメントアウト(<!-- -->)の記述の仕方にあったようだが、
面倒だったのでコメントアウト行をすべて削除することで対処してしまった。
恐らくは--の後ろの半角スペースがないのが原因だと思われる。

というわけで、今後もクロスブラウザ対応には頭を悩まされる状況が続きそうだ。
先日、お伝えした通り、Operaからアメブロの管理画面に
アクセスできなくなってしまった。
そこで、アメブロのアクセス用にFirefoxを引っ張り出したのだが、
毎回、スタートページとは別に「プラグインのチェックと更新」
タブが開いて、実に鬱陶しい。

プラグインを最新バージョンに更新すれば良いのだが、
私のようにメインで使っているわけではないし、
安定した環境を変えたくないというユーザーもいるだろう。
※セキュリティなどを考えるならプラグインは常に最新バージョンにすべきで、
更新しないのはあくまで自己責任として行うこと。

というわけで、「プラグインのチェックと更新」を無効化する方法を調べてみた。

実は最初はコンフィグ画面から設定を変更する方法を試してみたのだが、
これでは無効化できないことが判明。
ちなみにコンフィグからの設定の変更方法を以下の通り。
1,URL欄に「about:config」と入力してコンフィグ画面を開く。
2,「plugins.update.notifyUser」という項目を探し出す。検索欄を使うと便利。
3,恐らく値がtureになっているので、ダブルクリックしてfalseにしてやれば完了。

どうやら起動時に一部の設定は勝手に変更されてしまうようだ。
で、辿り着いたのが、「user.js」を使う方法。
「user.js」はFirefoxのカスタマイズ情報が格納されているファイル(prefs.js)を
残したまま、設定を上書きするためのものだ。
つまり、何か不具合があればuser.jsを削除してしまえば良い。
具体的な方法としては次の通り。
1,ブラウザ上部のメニューバーからヘルプ→トラブルシューティング情報と辿り、
開いたページのアプリケーション基本情報の「フォルダを開く」をクリック。
2,設定ファイル等が保存されたフォルダが開くので、テキストエディタなどを使って
新たに「user.js」というファイルを作る。
3,user.jsに「user_pref("plugins.update.notifyUser", false);」に記述。
保存して再起動すれば「プラグインのチェックと更新」は無効化されているはず。

当然ながらこの状態ではプラグインの更新状況は不明なので、
その点に関しては充分注意が必要。
昨日辺りからOperaでアメブロの管理画面にログインしようとすると、
リダイアルされてログインできなくなってしまった。
他のブラウザでは問題なくログインできるので、
Opera固有の問題のようだ。
ちなみにバージョンは12.17である。

もともとアメブロではOperaは推奨環境外のようで、
仕様変更でもあったために、そうなったのかも知れない。
ただ、これとは別にここのところ、頻繁にOperaが落ちる。
どうやらOperaは古いバージョンを残したまま新しいバージョンに更新すると、
いろいろとトラブルがあるらしい。
そういえば1週間程前に、立ち上げるたびに
あまりにバージョンアップの通知がうるさいくて(しかも表示させない方法が不明)、
いやいやながら12系の最新バージョンである12.17にアップデートしたばかりだ。

というわけで、問題の解決になるかわからないが、
Operaをクリーンインストールすることに。
重要なのはブックマークのバックアップくらいか。
念のため、「Application Data」にあるOperaのフォルダごとバックアップ。
アンインストール後、残ったフォルダも全て削除して再インストール。

結果的にはクリーンインストール後もログインできない状況は変わらなかった。
ただ、別系統のバージョン20も試したところ、こちらは問題なくログインできた。
もっともあまりに使い勝手が違うので、
Opera20をメインのブラウザとして使う気になれない。
アメブロ管理用に別のブラウザを使うしかないか・・・。