シス卿、ご協力ありがとうございましたm(__)m
種明かしをすると、JavaScriptでオブジェクト(簡単に言うとIDという要素が埋め込まれたDIVタグです)の配置を制御して(いわゆるDHTMLというテクニックです)3列表示を実現しているんですが、SafariをDHTMLが有効なブラウザと認識していなかったのです。
一応Safariのレンダリングエンジンの仕様はFirefox(Mozilla)のGeckoエンジンと同一ということは理解していましたので、Mozilla用のスクリプトを適応させてみたところうまく表示できたようです(なお、Operaには対応しています)。
厳密に言うと、FirefoxもSafariも標準規格W3Cに準拠しているので、同じJavaScriptの関数を使用して同じ結果が得られるということです。
ところで、シス卿からSafariのレンダリングエンジンはKHTMLだとの指摘がありました。
KHTML!!
・・・なんじゃそりゃ(嘘
KDEのレンダリングエンジンなら私の守備範囲じゃないですかぁ!
というわけで、確認してなかったんだけどKHTMLの本家ブラウザKonquerorでどう見えるかやってみた(普通はKDEでもFirefoxを使う)。結果は、
「CSS編集用」そのまんま(笑)
これは、筆者のサイトに限らず、CSS編集用を使って独自デザインにしているサイトは全部「CSS編集用」のプレーンな表示になるようです。
Konquerorってリンクするスタイルシートの数に制限があったり、動的にJavaScriptを読み込んだりできないのかも知れないですね。
Safariに出来てKonquerorに出来ないということは、筆者のKDE環境がVer.3.3という古いバージョン(Debianは更新が遅い)のせいかも知れませんが。
もし、当サイトがぐちゃぐちゃに表示される方がいらっしゃいましたら、遠慮なく当ページにコメントしてください。
あ、中途半端にJavaScriptが動くPDAとかはダメです。あきらめて携帯用ページで読んでくださいね(笑)
【追記】
シス卿に確認したところ、SafariはレンダリングエンジンとしてGeckoを偽装していました。そういうことならUserAgentがGeckoかどうかで、ブラウザを類別してスクリプトを実行することが可能ですね。
しかし、最近「偽装」と言うと悪いイメージが^^;