ネットスケープでも同じ効果を。

[新着] Webテンプレートを仮オープンしました



0   名前: Nico : 2005/03/16 03:21
「上部の余白を画面サイズから割り出したい。 」
http://www.tagindex.com/cgi-lib/q1bbs/patio.cgi?mode=view&no=1405
の、カヅサツさんから教えていただいたタグをもとに、ホームページを制作いたしました(番号では4。お世話になりました)。

ところが、今日ネットスケープで拝見したところ、上部が余白どころか隙間なくくっついてました。
IEでの設定はそのままに、ネットスケープでもその設定と同じ効果をもたらすには、どうしたらいいでしょうか。

1   名前: tk : 2005/03/16 10:42
allabj.style.marginTop = topmargin;

allabj.style.marginTop = topmargin+"px";
に変えてみたらどうでしょう?
IEとその他で処理をわける必要があったりするのでしょうか?

2   名前: みや : 2005/03/16 11:42
tk さんが指摘する通り、obj.style.marginTop の値は「単位を伴った文字列」でなければなりません。CSS の仕様上、margin-top には単位が必須なのと同じ理屈です。

# もっとも、DOM2-CSS では、style オブジェクトに属する全てのプロパティの値は(zIndex ですら!) DOMString タイプ(JavaScript での String タイプ)です。

IE はその辺非常にファジーですが、正しく書いて_も_動きます。

3   名前: カヅサツ : 2005/03/16 12:44
> obj.style.marginTop の値は「単位を伴った文字列」でなければなりません。

その通りその通りですすいませんすいません。
こーのーミースーはーいつかー来た道ー!

4   名前: Nico : 2005/03/17 02:15
まだ修正してないのですが、そのコードで大丈夫なようですね。
直してからだと読んでもらえるかわからないので、先にお礼だけ述べさせていただきます。
tkさん、みやさんカヅサツさん、ありがとうございました。
(でも、ネットスケープは難敵だなぁ…)

5   名前: みや : 2005/03/17 04:23
> (でも、ネットスケープは難敵だなぁ…)

そうですか? 私はむしろ、W3C や MSDN に書かれた仕様通り_でなくとも_動いてしまい、後の世代に大量のバグ修正を強いる IE の方が難敵なのですが。

IE 関連のバグ修正でこんな時間になってしまった(苦笑)。

# いや、IE のせいというよりは Web プログラマの怠慢のせいなのは分かってますが、それにしてもなあ….

6   名前: カヅサツ : 2005/03/17 15:40
> (でも、ネットスケープは難敵だなぁ…)

違います違います悪いのは IE です。あとオレ。

7   名前: Nico : 2005/03/17 15:56
私は素人に毛の生えたようなものなので、多少荒くてもカタチになってるほうがありがたいのですが、
やはり文字打ちからちゃんと作ってゆく、みたいなわかってる人にとっては、みやさんカヅサツさん
みたいな意見になるようですね。

ところで、先日Webの担当官に、ネスケの4にも対応してないとダメだ、と言われました。
そこは人材派遣会社で、基本的なことのようです。
ネスケの新しいバージョンならともかく、4だとCSSが効かない…ですよね?
みなさんは、そこまで考えて作ってらっしゃるのでしょうか?

8   名前: Nico : 2005/03/17 16:15
↑新しいスレをたてたほうが良さそうなので、そうさせていただきます。

一覧へ戻る