#author("2016-12-16T00:10:23+09:00","","")
#author("2016-12-16T23:52:35+09:00","","")
**[[質問箱5/246]] [#e00ce5e2]
|RIGHT:70|LEFT:410|c
|~カテゴリ|デザイン・CSS・スキン|
|~サマリ|見出しに矢印を入れたい|
|~バージョン|1.5.1|
|~投稿者|[[nuri]]|
|~状態|質問|
|~状態|完了|
|~投稿日|&new{2016-12-09 (金) 21:01:46};|
***質問 [#e81e1e27]
見出しの右上に付く矢印を見出しの中に入れたいのですがどのようにすれば良いでしょうか?
以下の箇所の順番を変えたりしましたが思うような結果が得られません。
&br;lib/convert_html.php
 // Add heding
 return array($text . $anchor, $this->count > 1 ? "\n" . $top : '', $autoid);
 }
現在はcssの擬似要素で重ねていますが出来れば出力させた際にhタグの中に入るようにしたいです。

***回答 [#f926b321]
- それでしたら、見出し要素を担当しているクラス側で修正するしかなかったと思います。
 // * Heading1
 // ** Heading2
 // *** Heading3
 class Heading extends Element
 {
 	(中略)
 
 	function toString()
 	{
 		return $this->msg_top .  $this->wrap(parent::toString(),
 			'h' . $this->level, ' id="' . $this->id . '"');
 	}
 }
$this->msg_top にトップへのナビゲーション([[質問>#e81e1e27]]で提示されている行だと配列の2番目の要素、$this->count > 1 分岐の結果)がHTML出力用の文字列で格納されており、Element クラスから継承されたタグのペア生成用のwrap() とは別で合体させているようなので。 --  &new{2016-12-12 (月) 21:32:02};
-- ありがとうございます。該当箇所を以下のようにしたところ<h>の後ろに入れることが出来ました。条件を増やしてしまい申し訳ないのですがもし</h>の前に入れる方法をご存知の方がいらっしゃいましたらご意見をいただけると幸いです。 -- [[nuri]] &new{2016-12-15 (木) 22:33:33};
 		return $this->wrap(parent::toString(),
 		'h' . $this->level, ' id="' . $this->id . '"' . $this->msg_top);
ja.lng.php
 $_msg_content_back_to_top = '><a class="jumpmenu" href="#navigator">&uarr;</a';
- 1.5.1 ならlib/convert_html.php の70行目あたり、
 	function wrap($string, $tag, $param = '', $canomit = TRUE)
 	{
 		return ($canomit && $string == '') ? '' :
 			'<' . $tag . $param . '>' . $string . '</' . $tag . '>';
 	}
が上記のwrap() の継承元です。開きタグの直後や閉じタグの直前に挿入が希望なら、1番目の引数である$string に渡すとよさそうなので、
 		return $this->wrap($this->msg_top . parent::toString(),
あるいは
 		return $this->wrap(parent::toString() . $this->msg_top,
という位置で文字列結合したほうが、id やclass などを渡す3番目の引数にねじ込むよりはスマートに実現できると思います。 --  &new{2016-12-16 (金) 00:10:23};
-- ありがとうございます。おかげで両方に対応でき、ja.lang.php側も前後を削らずに済みました。 -- [[nuri]] &new{2016-12-16 (金) 23:51:23};

#comment



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.079 sec.

OSDN