[ 新規 ] [ 検索 | 一覧 | FrontPage ] [ 履歴 (RSS) | 差分履歴 (RSS) ] [ ログイン ]
【PR】Amazon | SL-C3000 | SL-C1000(3/18発売!) | SL-C860 | SL-6000W | SL-6000L | SL-6000N

WalWiki/カスタマイズ/汎用ブロックコンテナ

差分表示


編集前の状態に戻します。
任意の範囲を汎用ブロックコンテナ(<div>タグ)に入れることが出来ます。
* [generic container]
-整形ルール
--行頭に = で <div> で括る事が出来ます。
--<div> を入れ子で記述する事は出来ません。 

- FormatRules の定義例
,(right),style,text-align:right; 

- = で始めた行に、続けてテキストを書いた場合は<div></div>となります。
 =(FormatRulesで定義した属性) 任意文字列
 
 例)
 =(right) 右寄せ
 
 生成されるタグ)
 <div style="text-align:right;">右寄せ</div>

- = で始めた行を改行してテキストを書いた場合は、<div><p></p>(従来の整形ルールで生成されるタグ)</div> となります。
この場合は = で閉じる必要があります。
 =(FormatRulesで定義した属性)
 任意文字列
 =
 
 例)
 =(right)
 右寄せ
 ,セル1,セル2
 =
 
 生成されるタグ)
 <div style="text-align:right;">
 <p>右寄せ</p>
 <table>
 <tr>
 <td>セル1</td><td>セル2</td>
 </tr>
 </table>
 </div>
** 関連するカスタマイズ

[[WalWiki/カスタマイズ/整形ルールの定義]]

** text_to_html()内の変更

- 2003-08-16 (Sat) 15:10:05 属性があるか、テキストがあるかの判定方法を変更
- 2003-09-06 (Sat) 23:35:35 属性にURLを書いてもおかしくならないように処理を修正
- [[#now]] inline()より先にextract_attr()を通すとインライン要素の属性を取得してしまうので元に戻しました。

     my (@txt) = split(/\n/, $txt);
     my (@toc);
     my $tocnum = 0;
     my (@saved, @result);
     my (@divsaved);                          # yakty add [generic container]

             push(@result, join('', '<tr>', @value, '</tr>'));
             # XXXXX
             #######
         # yakty add [generic container] start
         } elsif(/^(=)(.*)$/){
             my $text = $2;
             my $text = &inline($2);
             my $attr = &extract_attr(\$text);
             $text = &inline($text);
             push(@result, splice(@saved));
             if(@divsaved){
                 push(@result, shift(@divsaved));
             } 
             if($attr =~ /\S/){
                 push(@result, "<div$attr>");
                 unshift(@divsaved, "</div>");
                 if($text =~ /\S/){
                     push(@result, $text);
                     push(@result, shift(@divsaved));
                 }
             }
         # yakty add [generic container] end

         }
     }
     push(@result, splice(@saved));
     push(@result ,splice(@divsaved));       # yakty add [generic container]


02163