Windows XP IE 7 で標準的な XGA スクリーン画面いっぱいに表示可能なサイズ

Windows XP の Internet Explorer 7 で window.open したときに XGA 画面にどれだけ表示できるか測った。 ウィンドウスタイルが XP スタイルで、タスクバーは上下のどちらかのときである。 ウィンドウフレームのサイズ タスクバーの高さ 30px タイトルバーの高さ 30px フレーム下部の高さ 4px フレーム左部の幅 4px フレーム右部の幅 4px サイズを計算 単位:px 幅 高さ スクリーンサイズ 1024 768 フレームの合計 8 64 window.open との誤差 4 4 最大表示可能サイズ 1012 700 JavaScript での開き方 window.open(url, “_blank”,’toolbar=no,scrollbars=yes,menubar=no,status=no,width=1012,height=700,resizable=yes,top=0,left=0’);

2009年3月27日 · Toshimitsu Takahashi

style が white-space:pre なブロック要素内で折り返すように JavaScript でハックするには

かなり限定的な話です。 スタイルシートの white-space 属性が pre 指定だと任意に改行が行われなくなるので、長い行が存在するとスクロールが入って見づらくなるのは、よく知られていると思います。 そんなときに JavaScript を適用して直して表示させる方法です。 .prestyle { white-space:pre; } となっていたときに下記のように load 時に修正します。 $(window).load(function() { $(".prestyle").each(function(){ var ctn = $(this).html(); ctn = ctn.replace(/^\\n|\\n$/g, "").replace(/\\n/g, "<br>"); $(this).html(ctn).css("white-space", "normal"); }); }); ※jQuery.js を使ってます。改行を br タグ に置き換えて white-space をノーマルに戻しています。Firefox だと前後に改行が入るようなので消しています。 IE だと中身に CR, LF が入っていても、white-space:pre や pre タグでないと innerHTML で取得するときは全てスペース化されてしまいます。 改行を活かしたいけど、HTML には手は付けられない。けれども CSS と JavaScript は付加できる。そんな場合に今回は有効な方法です。

2008年3月19日 · Toshimitsu Takahashi