pukiwikiで表組みの表示位置を変えたい


表組みの表示位置を変えたい

表直前に'LEFT:','CENTER:','RIGHT:'を書くことでテーブルの中央寄せ/右寄せ

使用法

RIGHT:
|右寄せ|
LEFT:
|左寄せ|

注意: この方法は、IE5互換モードではうまく見えません。HTML に XML 宣言(<?xml ....>)があると IE6 は IE5互換モードで動作します。
PukiWiki のデフォルトはXML 宣言を必要とするXHTML1.1 で出力するので、出力しないように設定変更や改造をする必要があります。(詳しくは、official:PukiWiki/Download/1.4.5やBugTrack/423および下記の質問ログなどを参照)

左寄せ(固定)に変更したいだけの場合

pukiwiki.css.php

.style_table {
	padding:0px;
	border:0px;
-	margin:auto;
	text-align:left;
	color:inherit;
	background-color:#ccd5dd;
}
-div.ie5 { text-align:center; }
+div.ie5 { text-align:left; }

style.inc.php を使用した左/中央/右寄せ

official:自作プラグイン/style.inc.php をインストール

pukiwiki.css.php

.table_left .style_table { margin:auto auto auto 0px; }
.table_center .style_table { margin: auto; }
.table_right .style_table { margin:auto 0px auto auto; }
.table_left div.ie5 { text-align:left; }
.table_center div.ie5 { text-align:center; }
.table_right div.ie5 { text-align:right; }

を .style_table, div.ie5 より下に追加

使用法(複数行プラグイン形式を有効)

#style(class=table_left){{
|table|
}}
#style(class=table_center){{
|table|
}}
#style(class=table_right){{
|table|
}}

表組み自体をページの左に寄せたい

表組み自体をページの左に寄せたいのですが、CSSいじる以外の方法はありますか?
また、IEではCSSをいじったことでちゃんと表自体が左側によったのですが、Mozilla Firebirdだとセンターのままです。

回答

表の配置指定がうまくいかない

1.4 以降で「表の外でもCENTER:やRIGHT:が使えるようにしました」とアナウンスされていますが、以下の記述があった場合

RIGHT:
|AAA|BBB|
|111|222|

で、表が右に貼り付くという解釈で良いのでしょうか?
だとしたら、うまく動いていないと思うのですが、私の環境だけでしょうか?

回答

表の中央寄せを左寄せにしたい

表組みをすると標準で中央に表示されるようになってますが,これを左寄せに変更したいのですが,うまくいきません.

この辺をかえればいいと思われる
html.phpの244行目

rray_push($result,"<div class=\"ie5\"><table class=\"style_table\"  cellspacing=\"1\" border=\"0\">");

のdivのクラスを新しくつくって

.textleft{
text-align:left;
}

これを読むように変えてみたのですが,何も変化ありません.
ほかになにか変えなければならないのでしょうか?

関連
回答

table_align.diffの当て方 official:続・質問箱/194より移行

表の左寄せについて、質問箱/327を参考に何とかやってみたのですが、上手く行きません。table_align.diffをダウンロードし、patch.exeをcmdを用いて実行、

patch > table_align.diff

と入力する事によって、doneの表示がなされ、一応はパッチ当てが成功したように見えました。(convert_html.php.origとconvert_html.php.rejが生成されました)

その後、convert_html.phpをサーバに転送し、

LEFT:
|表|

のように記述し、ページの更新を行いましたが、依然として中寄せのままでした。
もはや私では理由が分かりかね、ご助言を頂きに来た次第です。パッチの当て方が良くなかったのでしょうか?当方初心者につき易しく教えて頂けませんでしょうか。

OS:Win2000、ブラウザ:DonutP 5.0β4

回答
table_align_143.diff

Index: convert_html.php
===================================================================
RCS  file: /cvsroot/pukiwiki/pukiwiki/convert_html.php,v
retrieving revision 1.62
diff -u -r1.62 convert_html.php
--- convert_html.php	18 Mar 2004 09:52:52 -0000	1.62
+++ convert_html.php	28 May 2004 12:25:38 -0000
@@ -502,6 +502,7 @@
	var $type;
	var $types;
	var $col; // number of column
+	var $align = 'center';
	
	function Table(&$root, $text)
	{
@@ -611,13 +612,14 @@
			}
			$string .= $this->wrap($part_string, $part);
		}
-		$string = $this->wrap($string, 'table', ' class="style_table" cellspacing="1" border="0"');
+		$string = $this->wrap($string, 'table', ' class="style_table_'.$this->align.'" cellspacing="1" border="0"');
		return $this->wrap($string, 'div', ' class="ie5"');
	}
}
class YTable extends Element
{ // ,
	var $col;
+	var $align = 'center';
	
	function YTable(&$root, $text)
	{
@@ -687,7 +689,7 @@
		{
			$rows .= "\n<tr class=\"style_tr\">$str</tr>\n";
		}
-		$rows = $this->wrap($rows, 'table', ' class="style_table" cellspacing="1" border="0"');
+		$rows = $this->wrap($rows, 'table', ' class="style_table_'.$this->align.' cellspacing="1" border="0"');
		return $this->wrap($rows, 'div', ' class="ie5"');
	}
}
@@ -756,6 +758,10 @@
	}
	function canContain(&$obj)
	{
+		if (is_a($obj,'Table') or is_a($obj,'YTable'))
+		{
+			$obj->align = $this->align;
+		}
		return is_a($obj, 'Inline');
	}
	function toString()
Index: skin/default.en.css
===================================================================
RCS file: /cvsroot/pukiwiki/pukiwiki/skin/default.en.css,v
retrieving revision 1.29
diff -u -r1.29 default.en.css
--- skin/default.en.css	3 Apr 2004 15:56:08 -0000	1.29
+++ skin/default.en.css	28 May 2004 12:25:38 -0000
@@ -131,11 +131,30 @@
	color:inherit;
 	background-color:#E0E8F0;
}
-.style_table
+.style_table,
+.style_table_center
 {
	padding:0px;
	border:0px;
	margin:auto;
+	text-align:left;
+	color:inherit;
+	background-color:#ccd5dd;
+}
+.style_table_left
+{
+	padding:0px;
+	border:0px;
+	margin:auto auto auto 0px;
+	text-align:left;
+	color:inherit;
+	background-color:#ccd5dd;
+}
+.style_table_right
+{
+	padding:0px;
+	border:0px;
+	margin:auto 0px auto auto;
	text-align:left;
	color:inherit;
	background-color:#ccd5dd;
Index: skin/default.ja.css
===================================================================
RCS file: /cvsroot/pukiwiki/pukiwiki/skin/default.ja.css,v
retrieving revision 1.30
diff -u -r1.30 default.ja.css
--- skin/default.ja.css	3 Apr 2004 15:56:08 -0000	1.30
+++ skin/default.ja.css	28 May 2004 12:25:38 -0000
@@ -132,11 +132,30 @@
	color:inherit;
	background-color:#E0E8F0;
}
-.style_table
+.style_table,
+.style_table_center
 {
	padding:0px;
	border:0px;
	margin:auto;
+	text-align:left;
+	color:inherit;
+	background-color:#ccd5dd;
+}
+.style_table_left
+{
+	padding:0px;
+	border:0px;
+	margin:auto auto auto 0px;
+	text-align:left;
+	color:inherit;
+	background-color:#ccd5dd;
+}
+.style_table_right
+{
+	padding:0px;
+	border:0px;
+	margin:auto 0px auto auto;
	text-align:left;
	color:inherit;
	background-color:#ccd5dd;

次に、LSさんと同じように、「UTF-8化して、XML宣言を出力しないことで対処」ではまったのですが

pukiwiki:PukiWiki-official/仕様を見つつ

init.phpの

define('SOURCE_ENCODING','EUC-JP');

define('SOURCE_ENCODING','UTF-8');

に変更しました。

その後、"XML宣言を出力しない"ですが、上と同じトコロに出ているZIPファイルを解凍し

"ie5.ja.css"、"pukiwiki.skin.ja.php"の二つを自分のskinフォルダに入れたところ

見事にIEでも左寄せが可能になりました。

ただし、自分の設定していたskinに戻すのがやっかい、なのと今までのファイルを
全てUTF-8にしなくちゃいけないのでは、と思い現状はモトに戻しています。

初心者にはちょっとハードルが高そうでした。 [sad]

表組みを左寄せにできない official:続・質問箱/144より移行

表組みをデフォルトで左寄せにしたいと思うのですが、
skinフォルダのdefault.ja.cssを

.style_table
{
	padding:0px;
	border:0px;
	margin-left:0px;margin-right:auto;
	text-align:left;
	color:inherit;
	background-color:#ccd5dd;
}

このようにしてみたのですが左寄せに見えません。
環境はIE6.0です。
過去の質問を見ながらいろいろ試してみたのですが上手くいかないので、どうかご教授願えたらと思います。

回答

「表組み 左寄せ」あたりをキーワードに検索で出てくるページは御覧になってますか? いろいろ試した内容&どうダメだったかを書いていただけると良いかもしれません。

ブラウザ側の問題

このサイトで作成されてる各ページの中で、表を入れてあるものがある。
しかし、見ているブラウザによって表が左寄せにならないブラウザもある。
クロムをベースにしているブラウザの場合、シークレットモードにしないと正しく表示されない。


トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-06-09 (木) 17:28:15 by pukiwiki 1.5.4