• 締切済み

safariでのbase hrefの仕様

safariでのbase hrefの仕様 動的URLを静的なURLに見せるためにmod_rewriteを使用しています。 ディレクトリで分けているためbase hrefを指定していますが、 safariのみ表示やリンクがおかしくなります。 <base href="http://xxx.xx/">として <a href="/index.html">リンク</a>をクリックすると http://index.thml/となってしまいます。 最初の/(スラッシュ)を無くし<a href="index.html">リンク</a>にするとsafariでは正しく動作しますが、 IEでhttp://xxx.xx/に移動したい場合、http://xxx.xx/aaa/から<a href="index.html">リンク</a>をクリックすると http://xxx.xx/aaa/index.htmlになります。 もともとは一つのPHPファイルをmod_rewriteでディレクトリによって分けているので../などを条件によって付け足すと相当な時間がかかります。 おそらく同じ理由でCSSや画像も読み込まれていません。 safariではbase hrefは反映されないのでしょうか? 何か対処方法があればおしえてください。 よろしくお願いいたします。

  • HTML
  • 回答数1
  • ありがとう数1

みんなの回答

回答No.1

HTML4, 5/XHTMLでは、<base>は<head>の中にしか入れられません。 <head>に書いた場合は、ドキュメント全体に適用されますので、<base target="_blank">などにしている場合は、 baseを適用したくない<a>に対して、target="_self"などが必要になります。 HTML3.2(DOCTYPEなし)では<body>の中に入れられるので、 後方互換モードや、文法違反の対応の仕方によっては、<body>の中に書かれた<base>も有効になります。 この場合は、<base>が書かれた場所以降にのみ<base>の内容が適用されます。 Safariは標準モードでの<body>内に書かれた<base>は無視しますので、<head>内に書くようにして下さい。

関連するQ&A

  • <base href="http://~について

    リンク先のベースを <base href="http://www.google.co.jp/A/">とした後に <a href="http://www.google.co.jp/B/c.html">hoge</a>の反映と同じようにしたいのですが、どうすればhttp://google.co.jpを省略できるのでしょうか。 <base href="http://www.google.co.jp/A/">とした後に <a href="B/c.html">hoge</a>ではhttp://google.co.jp/A/B/c.htmlとなってしまいます。 どうか教えてください。

    • ベストアンサー
    • HTML
  • HTMLで<a href="http://・・・・ .jp">で特定の

    HTMLで<a href="http://・・・・ .jp">で特定のホームページへリンクさせる場合、URLの最後のjpの後に/(スラッシュ)は必要ですか。あってもなくてもいいのでしょうか。

  • 基本認証の実施判別方法について

    以下のようにリンク元を識別して認証の判断を 行いたいと思っています。 <基本認証対象のディレクトリ> http://www.aaa.com/member/index.html ※/member/に.htaccessを設置 <リンク元> 1.<a href="http://www.aaa.com/member/index.html">~</a>   と記載されたhttp://www.hoge.com/index.htmlファイルから   http://www.aaa.com/member/index.htmlをアクセス 2.ブラウザから直接以下のURLを入力   http://www.aaa.com/member/index.html つまり、http://www.hoge.com/のリンクから http://www.aaa.com/member/index.htmlへアクセスされた場合は、 認証をしないでそのままスルーとし、「2.」は認証を行う、 というものです。 それとも、これって不可能なのでしょうか?

    • ベストアンサー
    • CGI
  • 秀丸エディタで<a href=

    <a href="http://aaa.com/67f2836">sfsdgdguiyusuds.....<a href="http://aaa.com/67a2836">.... のURL部分 http://aaa.com/67f2836 http://aaa.com/67a2836 抜き出したいと思います。 ドメイン(http://aaa.com)の部分は同じですので、 「http://aaa.com」を最初に指定して、「"」を最後として抽出したいと思います。 よろしくお願いします。

  • <a href=…>がうまくいかない

    gooの簡単HPにサイトを持っています。 ここの日記のページを書く際に、 ・・・・・(文章)・・・・・<a href=http://(URL1)>単語1</a><a herf=http://(URL2)>単語2</a><a href=http://(URL3)>単語3</a>・・・・・(文章)・・・・・ という風に、単語3つに連続して文中リンクを張りました。単語1,3は問題なくちゃんとリンクが張られるのですが、単語2のところだけリンクされず残ってしまいます。どうすればいいのでしょうか。

    • ベストアンサー
    • HTML
  • 既にIE仕様のページ内リンク(<a href="#あああ">が複数ある

    既にIE仕様のページ内リンク(<a href="#あああ">が複数あるのですが、これでは、FIREFOX、safariでは動きません。そこでcssを使って、対応させたいのですが、どうすればよいのでしょうか?ご教授願います。

    • ベストアンサー
    • HTML
  • safariでクリックすると画面を閉じる方法

    自己解決が困難な為質問させていただきます。 HTMLタグ内にて下記を記載したページをIEで読み込むと "閉じる"をクリックすると画面が閉じれます。 ===== <a href="javascript:window.close();">閉じる</a> ===== しかしSafariでは"閉じる"はリンク文字として認識されている(触ると色が変わる)のですが、クリックしても挙動がありません。 Safariでクリック後に画面を閉じる方法をご存知の方、よろしくお願いいたします。

  • macX、ローカル環境:ブラウザで「/」としただけでindex.htmlを表示させたい

    宜しくお願いします。 当方、maxXのバージョン10.4を使用し、web制作をしています。 いままで、ページ間リンクのaタグ指定は <a href="info/index.html"> というように、index.htmlという所まですべてつけて記載していたのですが、一緒に作業している人に<a href="info/">というように、スラッシュで止めて記載するように指示され、さっそくすべてそうなるように置換しました。 そこで問題が発生。サーバにアップするとちゃんとリンクしているのですが、ローカル環境で確認しようとしたときに、ディレクトリの一覧が表示されてしまい、index.htmlを自動的に表示してれません。 firefox、safari、operaすべてでそうです。 (firefox/operaではブラウザのウィンドウ内にディレクトリ一覧が、safariではフォルダが開きます。) おそらく、macXの環境かなにかをいじることになるんだと色々検索したのですが、ローカルでサーバを立てるやりかた等がヒットしてしまい、思った結果を見つけることができません。サーバを立てたい訳ではなく、単純に「index.html」を省略したいのですが。 ローカルのApachとか?ダーウィンなどを設定するのでしょうか・・? ご存じの方、ご教授くださいませ。 よろしくおねがいします。 (すみません、書き込んでおきながら連休中不在にするので、お返事は火曜日以降になります。よろしくおねがいします。)

    • ベストアンサー
    • Mac
  • a href= の使い方について

    本を見ながらプログラムを進めています。 本の通りに行くと、 <p><a href="join/">トップへ</a></p> 上記でindex.phpにアクセスできるはずなんですが、クリックするとObject not found!になります。 index.phpと現在のページはjoinというフォルダに入っています。 これはなぜなのでしょうか?? a href の使い方についてもいまいちわかっていないので、そちらについても説明いただけるとありがたいです。OTL

    • ベストアンサー
    • HTML
  • ●Macのsafariのあるリンクボタンだけ、カーソルを乗せても矢印に

    ●Macのsafariのあるリンクボタンだけ、カーソルを乗せても矢印にならず、リンク先に飛ぶことができません。 ちょっと仕事のサイトなので全て公開する訳にはいかないのですが、ソースとしては、ごく普通の <ul> <li class="kaisya"><a href="kaisha.html">会社概要/求人</a></li> <li class="cebu"><a href="●●●">●●店</a></li> <li class="saipan"><a href="index.html">●●店</a></li> </ul> で、他の部分で上記と全く同じようにコーディングしている部分はちゃんとマウスカーソルを合わせると矢印になり、リンク先にも飛ぶんです。 MacOS10.6.2でsafari5ですが、発注先の方のMacのsafari(バーションは知りません)でも同じ現象が起こっているようです。 検索してみたのですが、わたしと全く同じケースはありませんでした。どなたか原因の解る方いらっしゃいますか?

    • ベストアンサー
    • HTML

専門家に質問してみよう