質問箱/3221

カテゴリ
サマリインライン型 refでのテキストの回り込み
バージョン1.4.5_1
投稿者こうすけ?
状態完了
投稿日2005-10-12 (水) 11:59:52

質問

インライン型refでのテキストの回り込みについて、質問させていただきます。

ブロック型refでは、aroundの指定でテキストの回り込みができますが、インライン型では、それができません。何か理由があるのでしょうか。

できれば、インライン型refでも、aroundの指定でテキストの回り込みが可能になるといいな思っています。どうかよろしくお願いします。

回答

  • ちょっと考えてみましたが、そもそもインライン型のrefで回り込みを可能にして、良いことあるんでしたっけ・・・? (^^; -- teanan 2005-11-15 (火) 15:23:57
    • テキストを回り込ませて、その画像にリンクを張るときです。この場合、テキストを回り込ませようとすれば、ブロック型しかできなくて、画像へリンクを張ることができません。また、画像へリンクを優先させると、インラインしかできなくて、テキストの回り込みが出来なくなります -- こうすけ? 2005-11-23 (水) 09:58:28
      • リンクできないのかな? -- 2005-11-23 (水) 12:34:48
      • はい。説明不足で申し訳ありません。私がお聞きしたかったのは、ページ内に表示した画像をクリックすると、別ページのリンク先へ移動するときのことです。&refのときにもaroundが指定できるようになれば、[[&ref(○○.gif,around):>http://pukiwiki.sourceforge.jp/]]のように画像へリンクが出来て、テキストの回り込みも可能になり便利になると思うのですが・・・ -- こうすけ? 2005-11-23 (水) 14:25:41
  • 質問箱/2308で既出のようです。早い話、「インライン要素に回り込み」といのはそもそもあり得ないので、ブロック型のrefでリンクを張れるようなオプションを提案するのが正しいアプローチでしょう。 -- 2005-11-23 (水) 17:27:21
  • ↓ほとんどテストしてないのでバグってるかも知れません。 -- 0? 2005-11-23 (水) 19:29:23
    // ref.inc.php,v 1.49  296行目から
    } else if (preg_match('/^([0-9.]+)%$/', $arg, $matches) && $matches[1] > 0) {
    	$params['_%'] = $matches[1];
    
    +} else if (preg_match('/^url=(.+)$/', $arg, $matches)) {
    +	$url2 = is_url($matches[1]) ? $matches[1] :
    +		get_script_uri() . '?' . rawurlencode($matches[1]);
    +
    } else {
    	$_title[] = $arg;
    }
    • “url=”をつけたものにリンクが張られます。“http”から始まれば*1外部リンク、そうでなければ内部リンクと判断させています。内部リンクの場合、ページの有無やページ名の妥当性のチェックなどはしていません。もし“url=”というタイトルをつけたい場合には諦めるか違う文字列で始めるなどして回避してください。“title=”でタイトルとするような仕様にすれば可能だとは思いますが、面倒なので (^^; -- 0? 2005-11-23 (水) 19:41:50
      • 横幅の関係上、インデント(タブ)は削除しました。#ref(画像url,around,…,url=http://example.com)のようにして使ってください。 -- 0? 2005-11-23 (水) 19:47:53
  • お疲れ様です。私も同じようなことを考えていました。別の方法として、自作プラグイン/div.inc.phpを使うと同じようなことが実現できるようです。 -- teanan 2005-11-24 (木) 09:21:37
    #div(start)
    [[&ref(hogehoge.png,nolink);>http://pukiwiki.sourceforge.jp/]]
    #div(end)
    ここに回り込む文章を書く
    #div(clear)
    • なるほど、他のプラグインとの組み合わせですか。少しは既存プラグインを知っておかないと不要な修正をしたり二重に作ったりしてしまいそうですね (^^; -- 0? 2005-11-25 (金) 15:51:13
  • 丁寧なお答えをいただき、本当にありがとうございました。早速、試したいと思います。また、ブロック型でのリンクが張れるようにブロック型の拡張を、できれば正式に対応してほしいと思います -- こうすけ? 2005-11-24 (木) 09:22:13
  • インライン要素に対してfloatと、divで囲んでfloatとは、marginなどの影響が異なってくるのではないでしょうか。質問箱/2308の「XHTMLの仕様だとおもいます。 アライメントなどは Inline要素である imgに含まずブロック要素側に含むはずです」もよくわかりません。インライン要素にwidthやmarginやtext-alignなんかは無視されるべきですが、float指定はOKでは? -- masa3? 2008-05-17 (土) 22:21:47

*1 is_url()使用

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-09-05 (土) 04:27:23
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.267 sec.

OSDN