0

第一次在这里提问。

我有一个围绕桌子建立的网站,我知道不好,但它已经完成了。它在 Firefox 中看起来不错,但在 IE 中到处都是文本。

链接是http://www.mothershipinc.com 警告:包含音乐

这是索引页面的代码:

<?php
include "db.php";

function imageResize($width, $height, $target) {

    //takes the larger size of the width and height and applies the formula accordingly...this is so this script will work dynamically with any size image
    if ($width > $height) {
    $percentage = ($target / $width);
    } else {
    $percentage = ($target / $height);
    }

    //gets the new value and applies the percentage, then rounds the value
    $width = round($width * $percentage);
    $height = round($height * $percentage);

    //returns the new sizes in html image tag format...this is so you can plug this function inside an image tag and just get the
    return "width=\"$width\" height=\"50\"";
}

function imageResize150($width, $height, $target) {

    //takes the larger size of the width and height and applies the formula accordingly...this is so this script will work dynamically with any size image
    if ($width > $height) {
    $percentage = ($target / $width);
    } else {
    $percentage = ($target / $height);
    }

    //gets the new value and applies the percentage, then rounds the value
    $width = round($width * $percentage);
    $height = round($height * $percentage);

    //returns the new sizes in html image tag format...this is so you can plug this function inside an image tag and just get the
    return "width=\"150\" height=\"$height\"";
}

$playerSQL = "SELECT * FROM main";
$playerResult = mysql_query($playerSQL) or die(mysql_error());
$playerRS = mysql_fetch_array($playerResult);

?>

<html>
<head>
<link rel="stylesheet" href="css/template.css" type="text/css" />
<?php include "fadeinscript2.php"; ?>
<?php include "fadeinscript.php"; ?>
</head>
<body id="page_bg">
<div align="center">
   <table width="800" height="100%" border="0">
     <tr>
    <td colspan="7" valign="bottom" align="right" height="80" background="images/header.gif" style="background-repeat:no-repeat;padding-bottom:5px;padding-right:20px;">
         <font style="font-size:12px;" color="#ffffff"><a href="index.php" style="text-decoration:none;font-size:12px;color:#ffffff;">Home</a> | <a href="artist.php?artistid=0" style="text-decoration:none;font-size:12px;color:#ffffff;">Artists</a></font>
       </td>
     </tr>
     <tr>
       <td colspan="7">
       </td>
     </tr>
     <tr>
       <td colspan="7">
       </td>
     </tr>
     <tr>
<!--BEGIN CURRENT RELEASES BLOCK-->
       <td valign="top" width="189" height="280" background="images/small_home_box.gif" style="background-repeat:no-repeat;padding-top:8px;">
      <table width="100%">
        <tr>
        <td align="left" colspan="2">
          <font style="font-size: 18px" color="#ffffff">Current Releases</h1><br />
        </td>
        </tr>
       <?php
        $crQuery = "SELECT * FROM albums WHERE currentrelease='y' ORDER BY orderfield LIMIT 4";
        $crResult = mysql_query($crQuery) or die(mysql_error());
        while ($crRS = mysql_fetch_array($crResult))
        {
          // Get Artist Name
          $artistQuery = "SELECT * FROM artists WHERE id=" . $crRS['artistid'];
          $artistResult = mysql_query($artistQuery) or die(mysql_error());
          $artistRS = mysql_fetch_array($artistResult);
          $image_location = $crRS['image_location'];
          echo "<tr>";
          echo "<td width='55' valign='top' style='padding-top:3px;'>";
              //Display profile image
              //$myimage = getimagesize("albums/" . $image_location);
              //$newsize = imageResize($myimage[0], $myimage[1], 50);
              echo "<a href='artist.php?artistid=" . $artistRS['id'] . "' target='_self'><img src='albums/" . $image_location . "' height='50' width='50' border='0'></a>";     
          echo "</td>";
          echo "<td align='left' valign='top'>";
          echo "<font style='color:#ffffff;font-size:.7em;'>";
          echo "<b><a href='artist.php?artistid=" . $artistRS['id'] . "' target='_self' style='text-decoration:none;color:#ffffff;'>" . stripslashes($artistRS['artist_name']) . "</a></b><br />";
          echo "<a href='artist.php?artistid=" . $artistRS['id'] . "' target='_self' style='text-decoration:none;color:#ffffff;'>" . stripslashes($crRS['album_name']) . "</a>";
          echo "</td>";
          echo "</tr>";
        }
       ?>
        <tr>
          <td colspan="2" align="right" style="font-size:.7em; color:#ffffff;padding-right:12px;">
            more current releases
          </td>
        </tr>
         </table>   
       </td>
<!--END CURRENT RELEASES BLOCK-->
       <td width="25" valign="top">
         &nbsp;
       </td>
<!--BEGIN FLASH BLOCK-->
       <td colspan="3" width="374" height="280" align="center" valign="middle" background="images/big_home_box.gif" style="background-repeat:no-repeat;padding-right:8px;">
             <script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 350, 250, 0, 3000, 1, "R")
          </script>
       </td>
<!--END FLASH BLOCK-->
    <td width="10" valign="top">
         &nbsp;
       </td>
<!--BEGIN APPEARANCES BOX-->
    <td valign="top" width="189" height="280" background="images/small_home_box.gif" style="background-repeat:no-repeat;padding-top:8px;">
      <table width="100%">
        <tr>
        <td align="left" colspan="2">
          <font style="font-size: 18px" color="#ffffff">Shows</h1><br />
        </td>
        </tr>
        <?php
        $crQuery = "SELECT * FROM appearances";
        $crResult = mysql_query($crQuery) or die(mysql_error());
        $crRS = mysql_fetch_array($crResult);
          echo "<tr>";
          echo "<td width='55' valign='top' style='padding-top:3px;'>";
          echo "<font style='color:#ffffff;font-size:.7em;'>";
          echo ereg_replace("(\r\n\r\n|\n\n|\r\r)", "<br /><br />", substr($crRS['shows'],0,300));
          echo "</font>\n";
          echo "</td>";
          echo "</tr>"; 
       ?>
        <tr>
          <td colspan="2" align="right" style="font-size:.7em; color:#ffffff;padding-right:12px;">
            &nbsp;
          </td>
        </tr>
         </table>   
       </td>
<!--END APPEARANCES BOX-->
    </tr>
         <tr>
<!--BEGIN UPCOMING RELEASES BLOCK-->
       <td valign="top" width="189" height="367" background="images/tall_home_box.gif" style="background-repeat:no-repeat;padding-top:8px;">
      <table width="100%">
        <tr>
        <td align="left" colspan="2">
          <font style="font-size: 18px" color="#ffffff">Upcoming Releases</h1><br />
        </td>
        </tr>
        <?php
        $crQuery = "SELECT * FROM albums WHERE newrelease='y' ORDER BY orderfield LIMIT 4";
        $crResult = mysql_query($crQuery) or die(mysql_error());
        while ($crRS = mysql_fetch_array($crResult))
        {
          // Get Artist Name
          $artistQuery = "SELECT * FROM artists WHERE id=" . $crRS['artistid'];
          $artistResult = mysql_query($artistQuery) or die(mysql_error());
          $artistRS = mysql_fetch_array($artistResult);
          echo "<tr>";
          echo "<td width='55' valign='top' style='padding-top:3px;'>";
              //Display profile image
              //$myimage = getimagesize("albums/" . $crRS['image_location']);
              //$newsize = imageResize($myimage[0], $myimage[1], 50);
              echo "<a href='artist.php?artistid=" . $artistRS['id'] . "' target='_blank'><img src='albums/" . $crRS['image_location'] . "' height='50' width='50' border='0'></a>";     
          echo "</td>";
          echo "<td align='left' valign='top'>";
          echo "<font style='color:#ffffff;font-size:.7em;'>";
          echo "<b><a href='artist.php?artistid=" . $artistRS['id'] . "' target='_blank' style='text-decoration:none;color:#ffffff;'>" . $artistRS['artist_name'] . "</a></b><br />";
          echo "<a href='artist.php?artistid=" . $artistRS['id'] . "' target='_blank' style='text-decoration:none;color:#ffffff;'>" . $crRS['album_name'] . "</a><br />";
          echo "<a href='artist.php?artistid=" . $artistRS['id'] . "' target='_blank' style='text-decoration:none;color:#ffffff;'>" . $crRS['release_date'] . "</a>";
          echo "</td>";
          echo "</tr>";
        }
       ?>
        <tr>
          <td colspan="2" align="right" style="font-size:.7em; color:#ffffff;padding-right:12px;">
            &nbsp;
          </td>
        </tr>
         </table>   
       </td>
<!--END UPCOMING RELEASES BLOCK-->
<!--BEGIN PLAYER BLOCK-->
     <td colspan="5" valign="top" width="418" height="367">
      <table width="100%">
        <tr>
          <td align="center">
            <?php
            echo stripslashes($playerRS['playercode']);
        ?>  
          </td> 
        </tr>
         </table>       
    </td>
<!--END PLAYER BLOCK-->
<!--BEGIN NEWS BOX-->
    <td valign="top" width="189" height="367" background="images/tall_home_box.gif" style="background-repeat:no-repeat;padding-top:8px;">
      <table width="100%">
        <tr>
        <td align="left" colspan="2">
          <font style="font-size: 18px" color="#ffffff">News</h1><br />
        </td>
        </tr>
        <?php
        $crQuery = "SELECT * FROM news";
        $crResult = mysql_query($crQuery) or die(mysql_error());
        $crRS = mysql_fetch_array($crResult);
          echo "<tr>";
          echo "<td width='55' valign='top' style='padding-top:3px;'>";
          echo "<font style='color:#ffffff;font-size:.7em;'>";
          echo ereg_replace("(\r\n\r\n|\n\n|\r\r)", "<br /><br />", substr($crRS['news'],0,500));
          echo "</font>\n";
          echo "</td>";
          echo "</tr>"; 
       ?>
        <tr>
          <td colspan="2" align="right" style="font-size:.7em; color:#ffffff;padding-right:12px;">
            more news
          </td>
        </tr>
         </table>   
       </td>
<!--END APPEARANCES BOX-->
    </tr>
    <tr>
<!--BEGIN ARTISTS BOX-->
    <td colspan="7" width="800" height="300" align="center" valign="top" background="images/artists.gif" style="background-repeat:no-repeat;padding-top:8px; padding-right:4px; padding-left:4px;">
      <table width="100%">
        <tr>
        <td align="left" colspan="2">
          <font style="font-size: 18px" color="#ffffff">Artists</font><br />
        </td>
        </tr>
        <tr>
        <?php
        $crQuery = "SELECT * FROM artists ORDER BY orderfield LIMIT 36";
        $crResult = mysql_query($crQuery) or die(mysql_error());
        $artists = 0;
        $totalartists = mysql_num_rows($crResult);
        while ($crRS = mysql_fetch_array($crResult))
        {
          $artists = $artists + 1;
          echo "<td width='100' align='center' valign='top' style='padding-top:3px;'>\n";
              //Display profile image
              echo "<a href='artist.php?artistid=" . $crRS['id'] . "' target='_self'><img src='artists/" . $crRS['image_location'] . "' height='75' width='75' border='0'></a><br />\n"; 
              echo "<a href='artist.php?artistid=" . $crRS['id'] . "' target='_self' style='text-decoration:none;color:#ffffff;font-size:.7em;'>" . $crRS['artist_name'] . "</a>\n";
          echo "</td>\n";
          if($artists == 8 || $artists == 16 || $artists == 24)
          {
            echo "</tr>\n";
            echo "<tr>\n";
          }
        }
       ?>
        </tr>
        <tr>
          <td colspan="6" align="right" style="font-size:.7em; color:#ffffff;padding-right:12px;">
            <a href="artist.php?artistid=0" style='text-decoration:none;color:#ffffff;font-size:.7em;'>more artists</a>
          </td>
        </tr>
         </table>       
     </td>
<!--END ARTISTS BOX-->
    </tr>       
    <tr>
        <td colspan="4" align="left" style="padding-left:15px;color:#ffffff;font-size:.75em;">
            Copyright &copy;2009 Mothership Inc.
        </td>
        <td colspan="3" align="right" style="padding-right:15px;">
            <a href="mailto:kevin@mothershipinc.com" style="color:#ffffff;text-decoration:none;font-size:.75em;">Contact Us</a>
        </td>
    </tr>   
   </table>
</div>
</body>
</html>
4

4 回答 4

2

考虑以下代码块:

<td valign="top" width="189" height="280" background="images/small_home_box.gif" style="background-repeat:no-repeat;padding-top:8px;">
      <table width="100%">
        <tr>
        <td align="left" colspan="2">
          <font style="font-size: 18px" color="#ffffff">Shows</h1><br />
        </td>
        </tr>
        <tr><td width='55' valign='top' style='padding-top:3px;'><font style='color:#ffffff;font-size:.7em;'>PASADENA<br /><br />Mar 17 2009 8:00P 
 Nabbs Creek Cafe Pasadena, Maryland <br /><br />Mar 19 2009 8:00P 
 thew barn with 86 the effort Carney, Maryland <br /><br />Mar 20 2009 8:00P 
 whiskey bar w/ b&b Hoboken, New Jersey <br /><br />Mar 21 2009 9:00P 
 Red House Tavern w/ Bond & bentley,Tsunami Rising! Baltimore, Maryland </font>
</td></tr>

您有宽度为 189 的父 td,但内容的子 td 仅大 55。这就是您的文本消失的原因。

于 2009-03-20T13:30:24.570 回答
1

使用分区而不是表格创建该布局确实不会令人难以置信的痛苦。

不过,您仍然需要牢记以下几点。

旧版本的 IE 不支持 min-width,Firefox 中的宽度不包括边框和填充,在 IE6 中,边框和填充在宽度内。示例 - 具有 10 像素填充的 100 像素框在 FF 中为 120 像素宽,在 IE6 中为 100 像素宽。

<div style="width: 800px; height: 80px; margin: 5px auto; background-color: Aqua;">
    <h2>Mothership Records Banner</h2>
</div>
<div style="width: 800px; margin: 10px auto; clear: both;">
    <div style="width: 178px; margin-right: 35px; float: left; background-color: Aqua;">Current Releases</div>
    <div style="width: 374px; margin-right: 35px; float: left; background-color: Aqua;">Image Banner Thing</div>
    <div style="width: 178px; float: left; background-color: Aqua;">Shows</div>
</div>
<div style="width: 800px; margin: 10px auto; clear: both;">
    <div style="width: 178px; margin-right: 35px; float: left; background-color: Aqua;">Upcoming Releases</div>
    <div style="width: 374px; margin-right: 35px; float: left; background-color: Aqua;">Player</div>
    <div style="width: 178px; float: left; background-color: Aqua;">News</div>
</div>
<div style="width: 800px; margin: 10px auto; clear: both; background-color: Aqua;">
    Artists
</div>
<div style="width: 800px; margin: 10px auto; clear: both;">
    Copyright
</div>
于 2009-03-20T13:43:59.840 回答
0

您可以通过在输出任何 HTML 之前声明 doctype strict 来强制大多数浏览器呈现(几乎)相同:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

doctype 告诉浏览器在呈现页面样式时要遵循哪些规则,而严格模式的 doctype 在我的经验中跨浏览器的相似度最高。

Quirksmode对doctypes有很好的概述,它们的比较图表是一流的。

我怀疑这与它有什么关系,但你也破坏了 html。框中的所有标题(当前版本、节目、新闻)都包含在<font>Header</h1>.

于 2009-03-20T14:49:37.063 回答
0

这与 IE6(我看它的)不支持 min-width 标记有关,我注意到你已经使用过,IE6 也将边距和填充计为宽度,可以这么说。

于 2009-03-20T13:34:11.080 回答