../
BODY部分をテーブルで割る*1プラグイン。まあ、../What's New!プラグインのために作ったようなものです。*2
- 使い方(実際は一行じゃないとだめっぽい。\は除いてね。)
&splitbody \
(%,width=100% border=0,valign=top,align=center){ \
&color(red){&version;};
% \
&ruby(やまとだましい){Natural American Spirit}; \
% \
&ref(pukiwiki.png); \
};
引数
- { } 内の文字を分割するデリミタ。@@@ とか、ありそうにないものを指定。分割した数だけTDができる。
- <table>タグの属性。""で括らず、空白を含めないものに限定される。
- <tr>タグの属性。同上。
- <td>タグの属性。同上。
- 属性は、スクリプト内で利用できるものを制限しています。
- 注意
- 多用すると、内容がごちゃごちゃします。FrontPageとか、他のページへの案内用ページだけに使うのがいいかも。
- ダウンロード
- GNU/GPLライセンスで、おながいします。 -- morikawa
- 近いうちにCSS対応にします。それまでアルファ版ってことでよろしこ。 -- morikawa
- いい。これは使えますね。要望としてはカラム毎(<td>)に左寄せ、センタリング、右寄せのように別々に指定できるようにして欲しいです。特に、両端のカラムの中をそれぞれの側へ寄せたいと考えています。 -- sha
BUG報告。%を含むページ(漢字を含む)にて、&splitbody;を置き、そのbody{...}の中に、&ref;を置く。すると、出力が変になる。&ref;内のrefer=....の出力において、%があると途切れてしまうようです。 -- sha
- BUGでもなんでもありませんでした。区切り文字を%にしていたためでした。申し訳ありません。 -- sha
- 本当はshaさんの要望通り、カラム毎指定できるといいんですが。。。CSS対応も要件*3なので、テーブルで分割するのがそもそも邪道だと、ご承知おきくださいな。 -- morikawa
- style指定でXSSの脆弱性があります。pukiwiki:自作プラグイン/div.inc.php参照。 -- reimy
official:自作プラグイン/splitbody.inc.phpのコメントログ†
- reimy
splitbody.inc.php及びdiv.inc.phpにXSSの脆弱性。div.inc.php参照。
- morikawa
reimyさんありがとうございます。
重要!!ご利用になっている方は、div.inc.phpへ変更されるか、下記変更を取り込んでください。
--- splitbody.inc.php.org Fri Mar 12 12:12:59 2004
+++ splitbody.inc.php Fri Mar 12 12:12:38 2004
@@ -97,7 +97,7 @@
$att2 = array();
foreach($att as $a) {
list($k,$v) = explode('=',$a);
- $a = $k.'="'.$v.'"';
+ $a = htmlspecialchars($k).'="'.htmlspecialchars($v).'"';
if (!empty($allow_attrs[$k]) && $allow_attrs[$k] == 1) {
array_push($att2,$a);
} //
以降、splitbody.inc.php は問題が生じた場合を除き、メンテナンスを終了します。機能の実現はdiv.inc.phpを利用してください。