Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 为什么表中引用类的链接采用main中链接的样式<;车身>;标签_Html_Css_Html Table - Fatal编程技术网

Html 为什么表中引用类的链接采用main中链接的样式<;车身>;标签

Html 为什么表中引用类的链接采用main中链接的样式<;车身>;标签,html,css,html-table,Html,Css,Html Table,我正在尝试格式化表中的链接。我已经为标记内的链接指定了默认格式。有人能指出为什么下面的CSS会将页面上的所有链接(包括标记为的表中的链接)格式化为标记中的链接吗?我已经在这个网站上读了很多关于使用CSS格式化标签中的对象(使用类)的帖子,但是我认为我还缺少一些其他基本的东西 body { background-color:#800000; color:#FFFFFF; font:14px arial,sans-serif; } body a:link { colo

我正在尝试格式化表中的链接。我已经为
标记内的链接指定了默认格式。有人能指出为什么下面的CSS会将页面上的所有链接(包括标记为
的表中的链接)格式化为
标记中的链接吗?我已经在这个网站上读了很多关于使用CSS格式化标签中的对象(使用类)的帖子,但是我认为我还缺少一些其他基本的东西

body
{
    background-color:#800000;
    color:#FFFFFF;
    font:14px arial,sans-serif;
}
body a:link
{
    color:#FFFFFF; /* unvisited link */
    text-decoration:underline;
    font:11px arial,sans-serif;
}
body a:visited
{
    color:#FFFFFF; /* visited link */
    text-decoration:underline;
    font:11px arial,sans-serif;
}
body a:hover
{
    color:#FFFFFF; /* mouse over link */
    text-decoration:none;
    font:11px arial,sans-serif;
}
body a:active
{
    color:#FFFFFF; /* selected link */ 
    text-decoration:none;
    font:11px arial,sans-serif;
}

table
{
    border-collapse:collapse;
    background-color:#DDDDDD;
    color:#000000;
    font:14px arial,sans-serif;
}
table, td, th
{
    border:1px solid black;
    padding-left: 4px;
    padding-right: 4px;
}
td.header
{
    padding-left: 4px;
    padding-right: 4px;
    padding-top: 1px;
    padding-bottom: 1px;
    font-weight:bold;
}
tr.header
{
    padding-left: 4px;
    padding-right: 4px;
    padding-top: 1px;
    padding-bottom: 1px;
    font-weight:bold;
}
table.links a:link
{
    color:#000000; /* unvisited link */
    text-decoration:underline;
    font:14px arial,sans-serif;
}
table.links a:visited
{
    color:#000000; /* visited link */
    text-decoration:underline;
    font:14px arial,sans-serif;
}
table.links a:hover
{
    color:#000000; /* mouse over link */
    text-decoration:none;
    font:14px arial,sans-serif;
}
table.links a:active
{
    color:#000000; /* selected link */ 
    text-decoration:none;
    font:14px arial,sans-serif;
}
编辑:下面是使用样式表的源代码

<?php
    include "../Core/Debug_Start.php";
    include "../Core/Database.php";
    Debug::Out( "Running 'Boat/UpdateBlades.php'" );
    include "User.php";
    include "Blades.php";

    session_start();
    if( !Users::IsUserLoggedIn() )
        header( "location:../index.php" );
?>

<html>
<head>
    <link href="../Styles/Damflask/Style_Damflask.css" rel="stylesheet" type="text/css">
</head>
<body>

<?php
    /////////////////////////////////////////////////////////////

    // returns a full list of all blade sets
    $aBladeSets = Blades::GetAllBladeSets( $database );
    $iNumBladeSets = count( $aBladeSets );
    if( $iNumBladeSets == 0 )
        return;
    $iNumRows = $iNumBladeSets + 1;

    // create the table
    echo( "<table class=\"links\" align=\"center\">" );
    for( $iRowIndex = 0; $iRowIndex < $iNumRows; $iRowIndex++ )
    {
        echo( "<tr>" );
        if( $iRowIndex == 0 )
        {
            // NAME
            echo( "<td class=\"header\">NAME</td>" );

            // AVAILABLE
            echo( "<td class=\"header\">AVAILABLE</td>" );

            // ADDITIONAL INFO
            echo( "<td class=\"header\">INFO</td>" );

            // EDIT / DELETE
            echo( "<td class=\"header\" colspan=\"2\"></td>" );
        }
        else
        {
            // display the blade set
            $iBladeSetIndex = $iRowIndex - 1;
            $bladeSet = $aBladeSets[ $iBladeSetIndex ];

            // NAME
            echo( "<td>" . $bladeSet->GetName() . "</td>" );

            // AVAILABLE
            echo( "<td>" );
            if( $bladeSet->IsAvailable() )
                echo( "Yes" );
            else
                echo( "No" );
            echo( "</td>" );

            // ADDITIONAL INFO
            echo( "<td>" . $bladeSet->GetAdditionalInfo() . "</td>" );

            // EDIT
            echo( "<td><a class=\"tablelink\" href=\"UpdateBlades.php?BladesID=" . $bladeSet->GetID() . "\">EDIT</a></td>" );

            // DELETE
            echo( "<td><a class=\"tablelink\" href=\"DeleteBladeSet.php?BladesID=" . $bladeSet->GetID() . "\">DELETE</a></td>" );
        }
        echo( "</tr>" );
    }
    echo( "<tr><td colspan=\"5\"><a href=\"AddBlades.php\">ADD A NEW BLADE SET</a></td></tr>" );
    echo( "</table>" );

    /////////////////////////////////////////////////////////////

    $database->CloseConnection();
    include "../Core/Debug_End.php"
?>
</body>
</html> 

您的CSS没有正确地定位它们,这就是原因

table.links .tablelink {
 STYLES HERE
}
使用您当前的标记将其作为目标的正确方法是:

table.links a:link {
您不需要.tablelink的类名。如果要以您现在的方式定位链接,它只是额外的标记,您只需要:

使用.tablelink类的好处是CSS中为这些链接设置样式所需的全部功能:

.tablelink {
STYLES HERE
}
您也不需要使用:

table.links {
您只需使用:

.links {
刚刚意识到(4个月后)我还没有结束这个问题。事实证明,body{}和table{}标记之间有一个空格:

body a:active
{
    color:#FFFFFF; /* selected link */ 
    text-decoration:none;
    font:11px arial,sans-serif;
}
 <--- A space.
table
{
    border-collapse:collapse;
    background-color:#DDDDDD;
    color:#000000;
    font:14px arial,sans-serif;
}
主体a:激活
{
颜色:#FFFFFF;/*所选链接*/
文字装饰:无;
字体:11px arial,无衬线;
}

您的表上有类吗?请也发布相关的HTML标记。仅供参考,您不需要在普通的
a
选择器前面加
body
。假设每个
a
标记都是
body
的后代,您添加了不必要的特殊性。您还定义了比您需要的更多的属性(字体、颜色等),而不是依赖于继承/级联。肉桂,您能否详细说明您的评论:“…定义了比您需要的更多的属性,而不是依赖于继承/级联。”我只使用我所知道的。你能给我指出一个更合适的方法来做我能做得更好的事情吗?(理想情况下是“最佳实践”)。请发布生成的HTML,而不是PHP。
table.links a
将针对每个
a
元素,该元素是具有类
链接的table元素的子元素。你把这里的``和
搞混了。