0

リンク付きの画像があります。何らかの理由で画像がない場合は、「画像」に見出しを表示したいと思います。これをPHPでコーディングしています。これが私のコード行です。

<a href='LINK.php?img=$id'><img src='$filename' alt='<h1>$username</h1>' width='500'></a>

<h1>jerry></h1>$username が jerry の場合、機能しておらず、出力はプレーン テキストの" " で、見出しはありません。

どうすれば問題を解決できますか?

4

6 に答える 6

3

htmlを出力する前に、ファイルが存在するかどうかを確認できます。

if(file_exists($filename)){ 

    echo "<img src='".$filename."' alt='".$username."' width='500' />";

}else{

    echo "<h1>".$username."</h1>";

}

これらのファイルの PHP チェックを結び付けたくない場合は、onerror="" イベントを使用して、javascript を使用してこの情報を変更することもできます。

頭の中にこれを含めます。

<script>

    function switchImage(obj,un){ 

        obj.remove();

        document.getElementById("userImage").innerHTML = "<h1>" + un + "</h1>";

    }

</script>

リンク/ヘッダーについては、次のようにします。

echo "<a href='LINK.php?img=".$id."' id='userImage'><img onerror='switchImage(this,\"".$username."\");' src='".$filename."' alt='".$username."' width='500'></a>";
于 2013-09-27T18:57:08.307 に答える
1

それは不可能です。それは alt の目的ではありません。Alt は「代替テキスト」の略です。画像がロードされていない (まだ) ときに表示されるテキストです。

また、それを機能させたい場合は、title属性を使用する必要があります。同じルールですが、カーソルを合わせたときに表示されるテキストです。

必要な解決策はツールチップ スクリプトだと思います。たくさんの種類があり、さまざまなスタイルがあるので、お気に入りの 1 つを見つけるのはそれほど難しくありません。

于 2013-09-27T18:57:00.747 に答える
0

h1そもそもの使用が正しいh1場合、画像が正しくロードされていても、次のようになります。

<h1><a href=""><img src="" alt="" /></a></h1>

の使用がh1正しくない場合、たとえば、デフォルトの CSS 表示のためだけに使用する場合は、まったく使用h1しないでください。

誤用しないでくださいalt。独自の属性が必要な場合は、data-*属性を使用してください。

一部の画像では、より複雑な代替テキストが必要になる場合があります。その場合、longdesc属性を使用できます。またはobject要素を使用します:

<object data="img.png" type="image/png">
  <!-- the alternative content goes here -->
  <h1>…&lt;/h1>
  <p>…&lt;/p>
</object>
于 2013-09-27T21:25:46.033 に答える
0

これが alt タグの性質です。それは平文です。

その画像にテキスト スタイルを適用すると、その場所に表示されるすべてのテキストに適用されます。例えば:

<a href='LINK.php?img=$id'><img src='$filename' class='headerimg' alt='$username' width='500'></a>

h1次に、流行の CSS スタイルを作成します。

.headerimg {
   font-weight: bold;
   font-size: 120%;
   /* etc. */
}
于 2013-09-27T18:58:11.857 に答える