0

我不是 HTML 和 CSS 的初学者……但我使用的是 PHP。我有一个非常小的动态生成的 PHP 页面,它创建一个表格并用数字填充它。CSS 正在处理随机项目,非常奇怪,我不确定发生了什么。<body>标签 CSS 根本不起作用。没有一处房产受到它的影响。table.tempscss 也不起作用,但如果我删除它,那么标签<th>就会失去它的样式。这是一个家庭作业,我知道这很容易解决,我最近在 CSS 和 PHP 方面遇到了最糟糕的时间。

都是一页,而且相对较小,所以这里是文档:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>

<title>Lab 1</title> 

<style type="text/css">
<!-- Declare document <body> styles -->
body{
    background-color: #9FDBFF;
    color: #333;
    font-family: Helvetica, sans-serif;
    font-size: .8em;
    height: 100%;
    width: 100%;
}

<!-- Declare document table styles -->
table.temps {
    width: 50%;
    height: auto;
    min-height: 400px;
    border: 2px solid black;
    color: #333;
}

th {
    background: blue;
    color: #FFF;
    height: 20px;
    width: 100px;
}

.colorIt {
    background-color: #CCC;
}
</style>

</head>
<body>
<?php

$intTableTotalWidth = 8;
$intTableTotalHeight = 8;
$intCount = 1;

print("<table class='temps'>");
print("<th>Farenheight</th>");
print("<th>Celcius</th>");

for ($intHeight = 0; $intHeight < $intTableTotalHeight; $intHeight++) {
print("<tr>");

for ($intWidth = 0; $intWidth < $intTableTotalWidth; $intWidth++) {

    if ($intCount % 2 == 0){
        print("<td class='colorIt'>" . $intCount ."</td>");
    }
    else {
        print ("<td>" . $intCount . "</td>");
    }

    $intCount++;
}

print("</tr>");
}

print("</table>");
?>
</body>
</html>

编辑:我的错人,我什至没有意识到我在 CSS 中使用 HTML 注释。它是内部 CSS,因此 CSS 注释不会改变 HTML 文档中的颜色,这让我很反感。我解决了这个问题。感谢您的意见!

4

4 回答 4

3

您正在样式标签中使用 html 注释。这是不允许的。你不应该样式和脚本标签中使用 html 注释。这是不允许的。删除它们,一切都会奏效。

于 2012-09-27T16:38:10.317 回答
2

删除这些行

<!-- Declare document <body> styles -->
<!-- Declare document table styles -->
于 2012-09-27T16:37:48.927 回答
0
  1. 您的<th>标签应嵌入<tr>标签中:<tr><th>col1</th><th>col2</th></tr>.

  2. 您输出的单元格/行比使用定义的列多<th>。如果您希望 a<th>包含两列,则应使用<th colspan="2">col1</th>.

于 2012-09-27T16:42:38.617 回答
0

更简单的解决方案:session_start()在 .php 文件的开头,将所有主题放在一个数组中,然后包含样式表

session_start()
$theme=array("links"=>"#ff0000", "bkg"=>"#00ff00");
$_SESSION["Theme"]=$theme;
...
<link rel="stylesheet" type="text/css" href="default.php">

你的样式表看起来像这样:default.php

<?php session_start();
if (isset($_SESSION["Theme"])) {
    extract($_SESSION["Theme"]);
    header("Content-type: text/css");
} else {
// this part is for proper coloring the file, editor will see <style> 
// but when loaded from main file <style> will be discarded     
?>
<style>
<?php } ?>
a {
   color:<?=$links?>;      
}

body {
    background-color: <?=$bkg?>;
}
于 2013-01-08T18:23:51.407 回答