我刚刚开始学习CSS(和XHTML),并遇到了为具有相同标签名称的标签分配不同属性的问题。CSS:如何解决特定标签
例如:我有两个h3标题,但是希望使用CSS专门解决它们,因为我想让它们具有不同的颜色。
我认为这与命名标题的方式有所不同(即h3.a),但尝试这不起作用。帮助将不胜感激!
我刚刚开始学习CSS(和XHTML),并遇到了为具有相同标签名称的标签分配不同属性的问题。CSS:如何解决特定标签
例如:我有两个h3标题,但是希望使用CSS专门解决它们,因为我想让它们具有不同的颜色。
我认为这与命名标题的方式有所不同(即h3.a),但尝试这不起作用。帮助将不胜感激!
除了标签名称CSS可以通过class和id被应用。请注意,最好确保代码中的案例与代码中的案例匹配。
.myClass可能并不适用于类= “MyClass的”
标识:
<style>
#FirstHeading {color: red;}
#SecondHeader {color: blue;}
</style>
<h3 id="FirstHeading"></h3>
<h3 id="SecondHeader"></h3>
类: .redHeading {颜色:红;} .blueHeader {颜色:蓝;}
<h3 class="redHeading"></h3>
<h3 class="blueHeader"></h3>
ID的目的通常是指向页面中的一个特定元素,clas ses被设计为可以与多个不同的元素一起工作
类也可以组合,因此您不需要将所有样式加载到一个类中。
<style>
.redHeading {color: red;}
.blueHeader {color: blue;}
.boldHeader {font-weight: bold;}
</style>
<h3 class="redHeading boldHeader"></h3>
<h3 class="blueHeader boldHeader"></h3>
为每个h3
添加不同的class
属性,然后使用.className
在CSS中对它们进行寻址。
e.g:
HTML:
<h3 class="class1">One header</h3>
<h3 class="class2">Another header</h3>
CSS:
.class1 {
color: #00f;
}
.class2 {
color: #f00;
}
这是类派上用场。
CSS
.myFirstClass { color:green; }
.mySecondClass { color:red; }
HTML
<h3 class="myFirstClass">Text</h3>
<h3 class="mySecondClass">Text</h3>
您可以将类分配给每一个元素,并使用CSS来只针对该类。例如:
HTML:
<h3 class="green">Green heading for this one</h3>
<h3 class="red">Red heading for this.</h3>
CSS:
h3.green { color:green; }
h3.red { color:red; }
使类在CSS中,像这样的:
h3.class1
{
color: blue;
}
然后只是说:
<h3 class="class1"></h3>
您可以使用该类或父级来定义它。如果你使用一个类将被定义如下:
h3.colorOne {
color: #ff0000;
}
h3.colorTwo {
color: #0000ff;
}
然后,他们将使用类似:
<h3 class="colorOne">I'm red</h3>
<h3 class="colorTwo">I'm blue</h3>
或者,也可以通过在各种各样的DIV使用id字段父设置:
#divOne h3 {
color: #ff0000;
}
#divTwo h3 {
color: #0000ff;
}
哪想被使用:
<div id="colorOne"><h3>I'm red</h3></div>
<div id="colorTwo"><h3>I'm blue</h3></div>
用法完全取决于您的布局需求和样式的可扩展性。
有很多不同的方法来定位选择器。
你可以给他们的类名:
<h3 class="makeblue">This should be blue</h3>
<h3 class="makegreen">This should be green</h3>
// in you css
h3.makeblue { color: blue; }
h3.makegreen { color: green; }
您可以使用 “高级选择”:
<div class="container">
<h3>This should be blue</h3>
<p>
<h3>This should be green</h3>
</p>
</div>
// in your css
div.container > h3 { color: blue; }
div.container p h3 { color: green; }
看看这里:http://css.maxdesign.com.au/selectutorial/通过解决您标签
在CSS处理该标签的所有副本,除非你更具体。
例如
a h3 {}
将在a
标签内处理所有h3
标签。
但是,如果您想要设置个别元素的风格或想要更多自由,则应使用class
或id
。
的id
可以在一个元件上使用,就像这样:
<h3 id="header"></h3>
然后你可以使用
#header {
// your css style here
}
的风格吧。
或者您可以使用它可以在多个元素中使用像这样一类:
<h3 class="red"></h3>
<a class="red"></a>
然后你可以使用
.red {
// your css style here
}
的风格吧。
谷歌提供了这里一些很好的视频教程:HTML, CSS and Javascript from the ground up
命名类时要记住的一个有用的事情是避免名称暗示类是如何设计的。在它们的样式将类设计信息泄漏到HTML中后命名类,如果稍后再进行重新设计,则将会有类名不再与设计匹配,或者您将不得不编辑HTML和CSS以保持它日期。
一种更好的方法是创建一个具有语义类,如:subtitle
,navigationHeader
等。此外,这是一个很好的做法,给予多个类,因此“扩展”的对象,而不是重复自己:
<h2 class="subtitle forum">Forum</h2>
<h2 class="subtitle group">Groups</h2>
.subtitle {
font-size: 14px;
font-weight: bold;
color: green;
}
.subtitle.forum {
color: blue;
}
.subtitle.group {
color: red;
}
谢谢!问题是,我没有看到你解决CSS中的任何一个h2标签。你有.subtitle,.subtitle.group和.subtitle.forum,但没有“.subtitle forum”或“.subtitle group”。为什么是这样? – kubasub
关于类名的一个注意事项是,当涉及到颜色或用法时,你永远都不想具体使用这些名称,因为这些东西可能会随着时间而改变。我们有一个名为'.button-green'的按钮类,用于我们的绿色按钮......然后他们决定改为使用蓝色按钮,而'.button-green'成为一个蓝色按钮。只是要记住。 – Seth