2012-11-05 23 views
0

这是一个非常令人沮丧的问题......我制作了一个HTML5按钮,使用CSS3--这个按钮在IE中起作用(功能上),但是当我在Firefox中打开我的页面时(v 16.0.2)该按钮不起作用(例如,您不能点击它 - 它什么都不做)。甚至更为奇怪的是,我只是将一个标准的href链接放在测试中(在同一页面上,在按钮旁边),我甚至不能点击它(例如,它什么都不做)。我已经在I.E 9和FireFox 16.0.2的两个不同的机器上测试过这个页面。HTML5 <button>在Firefox中无法使用,但在IE中使用

这里是我的按钮的HTML代码:

<p><button type="button" onClick="location.href='index.php'" class="navigationButton">Back to World Map</button> 

<!-- test link --> 
<a href="index.php">home</a></p> 

而CSS:

.navigationButton { 
    font-family: Arial, Helvetica, sans-serif; 
    font-size: 18px; 
    color: #ffffff; 
    padding: 10px 20px; 
    background: -moz-linear-gradient(
     top, 
     #86eb86 0%, 
     #013006); 
    background: -webkit-gradient(
     linear, left top, left bottom, 
     from(#86eb86), 
     to(#013006)); 
    background: -ms-linear-gradient(#86eb86, #013006); 
    background: -o-linear-gradient(#86eb86, #013006); 
    background: linear-gradient(#86eb86, #013006); 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#86eb86', endColorstr='#013006'); 

    -moz-border-radius: 15px; 
    -webkit-border-radius: 15px; 
    border-radius: 15px; 
    border: 3px solid #171717; 
    -moz-box-shadow: 
     0px 1px 3px rgba(000,000,000,0.5), 
     inset 0px 0px 10px rgba(087,087,087,0.7); 
    -webkit-box-shadow: 
     0px 1px 3px rgba(000,000,000,0.5), 
     inset 0px 0px 10px rgba(087,087,087,0.7); 
    box-shadow: 
     0px 1px 3px rgba(000,000,000,0.5), 
     inset 0px 0px 10px rgba(087,087,087,0.7); 
    text-shadow: 
     0px -1px 0px rgba(000,000,000,0.4), 
     0px 1px 0px rgba(255,255,255,0.3); 
} 

如果我实现这个按钮的适用于任何人(在IE和Firefox),请让我知道 - 否则如果我做错了什么,也请告诉我一个解释。

干杯!

编辑: 这是一个页面的完整代码。它是由PHP/MySQL动态生成的...

<?php 

require_once("includes/dbconnect.php"); 

$title = ""; 
$regionName = ""; 
$mapScript = ""; 
$mapDivStyle = ""; 
$pageDimensions = ""; 
$footerMargin = ""; 

function numberFormat($item){ 

    return number_format($item, 0, '.', ','); 
} 

if(isset($_GET['region'])){ 
$region = htmlentities($_GET['region']); 

if($region == "northAmerica") 
{ 
    $regionName = "North America"; 
    $title = $regionName . ' | WorldTravel Tourism App'; 
    $mapScript = "js/northAmerica.js"; 
    $mapDivStyle = " style=\"width: 800px; height: 707px; margin-bottom:20px;\""; 
    $pageDimensions = " style=\"width: 960px; height: 1050px;\""; 
    $footerMargin = " style=\"margin-top:1159px;\""; 
} 
else if($region == "southAmerica") 
{ 
    $regionName = "South America"; 
    $title = $regionName . " | WorldTravel Tourism App"; 
    $mapScript = "js/southAmerica.js"; 
    $mapDivStyle = " style=\"width: 800px; height: 668px; margin-bottom:20px;\""; 
    $pageDimensions = " style=\"width: 960px; height: 950px;\""; 
    $footerMargin = " style=\"margin-top:1059px;\""; 
} 
else if($region == "eurasia") 
{ 
    $regionName = 'Eurasia'; 
    $title = $regionName . " | WorldTravel Tourism App"; 
    $mapScript = "js/eurasia.js"; 
    $mapDivStyle = " style=\"width: 800px; height: 415px; margin-bottom:20px;\""; 
    $pageDimensions = " style=\"width: 960px; height: 900px;\""; 
    $footerMargin = " style=\"margin-top:1009px;\""; 
} 
else if($region == "africaMiddleEast") 
{ 
    $regionName = "Africa and the Middle East"; 
    $title = $regionName . " | WorldTravel Tourism App"; 
    $mapScript = "js/africaMiddleEast.js"; 
    $mapDivStyle = " style=\"width: 800px; height: 799px; margin-bottom:20px;\""; 
    $pageDimensions = " style=\"width: 960px; height: 1150px;\""; 
    $footerMargin = " style=\"margin-top:1259px;\""; 
} 
else if($region == "oceania") 
{ 
    $regionName = 'Oceania'; 
    $title = $regionName . " | WorldTravel Tourism App"; 
    $mapScript = "js/oceania.js"; 
    $mapDivStyle = " style=\"width: 738px; height: 527px; margin-bottom:20px;\""; 
    $pageDimensions = " style=\"width: 960px; height: 800px;\""; 
    $footerMargin = " style=\"margin-top:859px;\""; 

} 
else{ 
    $invalidRegion = $region; 
    $title = "Region not found | WorldTravel Tourism App"; 
} 
} 
else{ 
    header("Location: index.php"); 
} 
?> 
<!DOCTYPE HTML> 
<html> 
    <head> 
     <title><?php echo($title); ?></title> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
     <link href="css/styles.css" rel="stylesheet" type="text/css"> 
     <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
     <script type="text/javascript" src="Scripts/swfobject.js"></script> 
     <script type="text/javascript" src="<?php echo ($mapScript) ?>"></script> 
    </head> 

    <body> 

     <div class="container"> 

      <header class="header"> 
      <p style="margin-left:-14px;"><img src="images/world_globe.png" class="headerImage" alt="World Globe" /></p> 
      <p style="margin-top:-150px; margin-left:150px; color:white; font-family:'Comic Sans MS', cursive; font-weight:bold; font-size:35px;">WorldTravel Global Tourism Application</p> 
      </header> 

      <div class="content"<?php echo ($pageDimensions); ?>> 
      <h1><?php echo($regionName); ?></h1> 

      <?php 

      if(isset($invalidRegion)){ 
       echo ("<p>Sorry, the region \"$invalidRegion\" is not valid</p>"); 
      } 

      ?> 

      <?php if(isset($region)){ ?> 
      &nbsp; 
      <div id="flashContent" <?php echo $mapDivStyle; ?>> 
      </div> 
      <?php } ?> 
      <p></p> 
      <?php 

      if(!isset($invalidRegion)){ 

       $query = "SELECT * FROM region WHERE region.regionID = (SELECT region.regionID from region WHERE region.regionName = '$region');"; 

       $result = mysql_query($query, $connection); 
       $row = mysql_fetch_assoc($result); 
       $regionPopulation = numberFormat($row['regionPopulation']); 
       $regionLandArea = numberFormat($row['regionLandArea']); 
       $populationDensity = round((($row['regionPopulation'])/($row['regionLandArea'])), 2); 
       $regionCountries = $row['regionCountries']; 
       $numberPrefix = ""; 

       echo("<p><span class=\"infoHeadings\">Region population:</span> " . $regionPopulation . ".</p>"); 
       echo("<p><span class=\"infoHeadings\">Region land area:</span> " . $regionLandArea . " square kilometers.</p>"); 
       echo("<p><span class=\"infoHeadings\">Population density:</span> " . $populationDensity . " people per square kilometer.</p>"); 
       echo("<p><span class=\"infoHeadings\">Countries in region:</span> " . $regionCountries . ".</p>"); 


      } 
      ?> 


      <p><button type="button" onClick="location.href='index.php';" class="navigationButton">Back to World Map</button><p> 

      <!-- test link --> 
      <p><a href="index.php">home</a></p> 


      </div> 


      <div class="footer"<?php echo ($footerMargin); ?>> 
      </div> 
     </div> 
    </body> 
</html> 
+0

尝试添加分号以完成JS语句:onClick =“location.href ='index.php';”此外,请确保已关闭所有已打开的其他标签(我曾遇到过该问题),并且您定义了''和''。 – 2012-11-05 00:44:37

+0

在我的Firefox 17(测试版)中正常工作 - 即使没有其他标签,例如“”...... – Aprillion

+0

您运行的是哪个版本的Firefox? –

回答

2

事实证明,我的元素之一的z索引是问题。在我的页面上,我的页脚div的z-index为20,顶部边距为500px,主要内容区域的z-index值较低(按钮所在的位置)。由于边缘区域“覆盖”了按钮,我无法点击主要内容区域中的任何链接或按钮。

所以我已经解决了这个问题,虽然我仍然想知道为什么FireFox没有阅读z-indexing,我也没有 - 我使用Google的html5shiv在I.E旧版本中启用html5元素)。

相关问题