BugTrack/30のミスの修正と提案

メッセージ

BugTrack/30の修正で、<ul>のマージン設定だけでは桁位置は揃いません。パディングも同時に設定する必要があります。下記のように修正すれば桁位置が揃うようになります。

*** html.php 411
-    array_push($result, sprintf($open, " style=\"margin-left:".($margin * 3)."em\""));
+    array_push($result, sprintf($open, " style=\"padding-left:".($margin * 3)."em;margin-left:".($margin * 3)."em\""));

Internet ExplorerとNetscape/Mozillaではリストの左開けの仕組みが異なるので、margin-leftとpadding-leftの両方に同じ値を設定する必要があります。


【補足】
デフォルトでは$body左端から第1階層、第1階層から第2階層、第2階層から第3階層のそれぞれが等間隔に左マージンが開きますが、$body左端から第1階層との間だけをもっと広げたい人もいるかと思います

その場合は下記のようにします。

if($level == $margin)
    array_push($result, sprintf($open, " style=\"padding-left:".($margin * 16 + 16)."px;margin-left:".($margin * 16 + 16)."px\""));
else
    array_push($result, sprintf($open, " style=\"padding-left:".($margin * 16)."px;margin-left:".($margin * 16)."px\""));

この場合、$body左端と第1階層との間隔が16+16=32px、第1階層から第2階層、第2階層から第3階層との間隔が16pxとなります。ご自分のレイアウトに合わせて調整してみてください。-- reimy 2002-08-08 (木) 03:39:14

【提案】
$bodyの左端から第1階層までの間隔と、各階層間の間隔をそれぞれpukiwiki.ini.phpで設定するようにしたほうがわかりやすいかも…。ついでにリストマークが不一致になる現象を回避。下記のように -- reimy 2002-08-08 (木) 03:53:25
*** html.php 391
function list_push(&$result,&$saved,$tag,$level)
{
+    global $_list_left_margin,$_list_margin;
*** html.php 411
-    array_push($result, sprintf($open, " style=\"margin-left:".($margin * 3)."em\""));
+    if($level == $margin)
+       array_push($result, sprintf($open, " style=\"padding-left:".($margin * $_list_margin + $_list_left_margin)."px;margin-left:".($margin * $_list_margin + $_list_left_margin)."px\" class=\"list$level\""));
+    else
+        array_push($result, sprintf($open, " style=\"padding-left:".($margin * $_list_margin)."px;margin-left:".($margin * $_list_margin)."px\" class=\"list$level\""));
*** pukiwiki.ini.php 86
+ /////////////////////////////////////////////////
+ // リスト構造の左マージン
+ $_list_left_margin = 16; // リストと画面左端との間隔(px)
+ $_list_margin = 16;      // リストの階層間の間隔(px)
  /////////////////////////////////////////////////
  // テキストエリアのカラム数
***default.ja.css に追加
ul.list1{
    list-style-type:disc;
}

ul.list2{
    list-style-type:circle;
}

ul.list3{
    list-style-type:square;
}

ol.list1{
    list-style-type:decimal;
}

ol.list2{
    list-style-type:lower-roman;
}

ol.list3{
    list-style-type:lower-alpha;
}

*1 ここのFrontPageなど

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2002-11-05 (火) 17:35:59
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.271 sec.

SourceForge