Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.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
Javascript 使用相同css文档的不同html页面上的不同链接颜色_Javascript_Html_Css_Hyperlink_Styles - Fatal编程技术网

Javascript 使用相同css文档的不同html页面上的不同链接颜色

Javascript 使用相同css文档的不同html页面上的不同链接颜色,javascript,html,css,hyperlink,styles,Javascript,Html,Css,Hyperlink,Styles,我对编程相当陌生,所以我很抱歉,我肯定,这是一个相对简单的问题 我正在寻找一种在 更多文本 然后定义与相关的前两个标记(不影响第三个标记)?然后,我会用每页的,等替换它 我唯一能想到的另一件事是尝试使用JavaScript,我对它不太熟悉。 我试着插入 <script type="text/javascript"> var myObj = document.getElementsByTagName("a"); myObj.style.color="green"; </scr

我对编程相当陌生,所以我很抱歉,我肯定,这是一个相对简单的问题

我正在寻找一种在

更多文本

然后定义与
相关的前两个
标记(不影响第三个
标记)?然后,我会用每页的
等替换它

我唯一能想到的另一件事是尝试使用JavaScript,我对它不太熟悉。 我试着插入

<script type="text/javascript">
var myObj = document.getElementsByTagName("a");
myObj.style.color="green";
</script>

var myObj=document.getElementsByTagName(“a”);
myObj.style.color=“绿色”;
进入一个给定的页面,希望它能使该页面上所有
标记中的文本颜色变为绿色,但它似乎不起作用

作为比较,我还通过将“a”改为“p”测试了我的JavaScript,如下所示:

<script type="text/javascript">
var myObj = document.getElementsByTagName("p");
myObj.style.color="green";
</script>

var myObj=document.getElementsByTagName(“p”);
myObj.style.color=“绿色”;
我希望这会使我所有的
文本变绿,但这也不起作用,所以很明显,对于初学者来说,我错编码了JavaScript

如果您能想到如何一次修改给定页面上的多个
标记(而不在标记中放入类),我们将不胜感激

谢谢

向主体元素添加ID,如:

<body id="page1">
只需更改这一行:

var pageName = document.getElementById("page").getAttribute('name');

向主体元素添加ID,如:

<body id="page1">
只需更改这一行:

var pageName = document.getElementById("page").getAttribute('name');

为每个主体元素指定一个ID,然后在CSS中选择子代锚定标记元素:

body#myBody1 a {color: red;}

body#myBody2 a {color: blue;}

为每个body元素指定一个ID,然后在CSS中选择子代锚定标记元素:

body#myBody1 a {color: red;}

body#myBody2 a {color: blue;}

根据我对你问题的理解。也许下面是你的答案。如果有任何错误,请改正

<style type="text/css">
   .page1content a
{
color:red;
}
      .footer a
{
color:pink;
}
</style>
<body>
<div class="page1content">
<p>text here 
<a href="someurl.com"> link here </a> 
more text 
<a href="secondurl.com"> second link</p> 
</div>

<div class="footer">
<p>even more text
<a href="thirdurl.com"></a></p>
</div>
</body>

.Page1内容a
{
颜色:红色;
}
.页脚a
{
颜色:粉红色;
}
此处文本
更多文本


根据我对您问题的理解。也许下面是你的答案。如果有任何错误,请改正

<style type="text/css">
   .page1content a
{
color:red;
}
      .footer a
{
color:pink;
}
</style>
<body>
<div class="page1content">
<p>text here 
<a href="someurl.com"> link here </a> 
more text 
<a href="secondurl.com"> second link</p> 
</div>

<div class="footer">
<p>even more text
<a href="thirdurl.com"></a></p>
</div>
</body>

.Page1内容a
{
颜色:红色;
}
.页脚a
{
颜色:粉红色;
}
此处文本
更多文本


您已经有了在纯HTML和CSS中执行此操作的方法。不需要Javascript

换言之,您希望以两个类内的内容为目标。你还忘了关闭你的p和a标签

例子: CSS HTML

文本在这里更多文本

文本在这里更多文本

链接:

您已经有了在纯HTML和CSS中执行此操作的方法。不需要Javascript

换言之,您希望以两个类内的内容为目标。你还忘了关闭你的p和a标签

例子: CSS HTML

文本在这里更多文本

文本在这里更多文本

链接:
让我们以您的代码为例

  • 标签
    更多文本第二个链接

    您必须重新插入CSS
    a{color:inherit}

  • 您可以通过更改CSS来实现这一点

    .page1内容a{color:red}

    它表示div中标记“a”的颜色,该类为 “第1页内容”

  • 正如您所提到的,您也可以通过javascript来实现

    但是您犯了一个错误。
    getElementsByTagName
    将返回一个 数组,而不仅仅是一个。数组包含所有结果


    例如,您可以获得第一个
    。让我们以您的代码为例

  • 标签
    更多文本第二个链接

    您必须重新插入CSS
    a{color:inherit}

  • 您可以通过更改CSS来实现这一点

    .page1内容a{color:red}

    它表示div中标记“a”的颜色,该类为 “第1页内容”

  • 正如您所提到的,您也可以通过javascript来实现

    但是您犯了一个错误。
    getElementsByTagName
    将返回一个 数组,而不仅仅是一个。数组包含所有结果


    例如,您可以在更复杂的CSS样式页面结构中获得第一个
    …这将失败,谢谢!我自己在学习html/css,我不明白必须将元素放在id/class选择器之后才能从更高的元素引用id/class。现在它有意义了(而且有效了!)!同样感谢@rishikesh的回答。考虑到答案是如此简单,我觉得有点傻…在一个更复杂的CSS样式页面结构中,这会失败的,谢谢!我自己在学习html/css,我不明白必须将元素放在id/class选择器之后才能从更高的元素引用id/class。现在它有意义了(而且有效了!)!同样感谢@rishikesh的回答。考虑到答案如此简单,我觉得有点傻……谢谢。这更有意义,尽管事实证明,在没有JavaScript的情况下这是可行的。我真的很感谢你的帮助。谢谢。这更有意义,尽管事实证明,在没有JavaScript的情况下这是可行的。我真的很感谢你的帮助。
    
    <div id="content1">
        <p>Text here <a href="someurl.com">and link here,</a> more text <a href="secondurl.com"> second link</a></p>
    </div>
    
    <div id="content2">
        <p>Text here <a href="someurl.com">and link here,</a> more text <a href="secondurl.com"> second link</a></p>
    </div>