使用SCSS,如何给具有相同节点位置的元素中的特定元素赋予CSS样式?
Using SCSS, How can I give CSS style to a specific element among the elements with the same node position?
首先,请检查我的代码。
<div className={styles.settingInfo}>
<header>
<h1>User ID</h1>
<p>this is for user ID</p>
<h1>Username</h1>
<p>this is for username</p>
</header>
<div>
<button type='button'>change</button>
</div>
</div>
使用这段代码,我想做的是给 (h1)username(/h1) 标签一个 margin-top:10px 而不给 className。
.settingInfo {
@include flexFullWidth;
height: 40%;
header {
@include headerStyle;
h1 {
color: colors.$BIG_TITLE;
letter-spacing: 1px;
}
}
div {
width: 35%;
padding-top: 20px;
border: 1px solid red;
}
}
我这样设置了 SCSS 文件,并想知道如何在不使用 className 的情况下为特定的 h1 标签赋予样式。
我知道我们可以轻松解决仅提供类名的问题,但只是想弄清楚如何以不同的方式处理这个问题。谢谢!
我的建议是只添加一个 class 但如果你想在没有它的情况下这样做,那么你可以使用 nth-child
select 或者像这样:
header h1:nth-child(3) {
margin-top: 10px;
}
您可以使用 nth-child(1)
以相同的方式 select 第一个 h1
。
首先,请检查我的代码。
<div className={styles.settingInfo}>
<header>
<h1>User ID</h1>
<p>this is for user ID</p>
<h1>Username</h1>
<p>this is for username</p>
</header>
<div>
<button type='button'>change</button>
</div>
</div>
使用这段代码,我想做的是给 (h1)username(/h1) 标签一个 margin-top:10px 而不给 className。
.settingInfo {
@include flexFullWidth;
height: 40%;
header {
@include headerStyle;
h1 {
color: colors.$BIG_TITLE;
letter-spacing: 1px;
}
}
div {
width: 35%;
padding-top: 20px;
border: 1px solid red;
}
}
我这样设置了 SCSS 文件,并想知道如何在不使用 className 的情况下为特定的 h1 标签赋予样式。
我知道我们可以轻松解决仅提供类名的问题,但只是想弄清楚如何以不同的方式处理这个问题。谢谢!
我的建议是只添加一个 class 但如果你想在没有它的情况下这样做,那么你可以使用 nth-child
select 或者像这样:
header h1:nth-child(3) {
margin-top: 10px;
}
您可以使用 nth-child(1)
以相同的方式 select 第一个 h1
。