gpt4 book ai didi

javascript - 单击父 div 时更改子颜色 div | CSS 伪

转载 作者:太空宇宙 更新时间:2023-11-04 07:57:25 25 4
gpt4 key购买 nike

我不太了解css。

我有 _sideButton默认颜色 white

._sideButton{background-color:white;height:100%;left:0;position:absolute;top:0;width:5px}

._sideButton:active{background-color:red;height:100%;left:0;position:absolute;top:0;width:5px}
  • 当我们选择 BUTTON 2 时,_sideButton 变成红色,并且一直变成红色。

  • 当选择 BUTTON 1 时,BUTTON 1 _sideButton 变为红色,然后 BUTTON2 _sideButton 变为默认值(白色)。

*这里 === JSFiddle ===

谢谢之前-/-

/*** Here guys ***/
._sideButton{background-color:white;height:100%;left:0;position:absolute;top:0;width:5px}

._sideButton:active{background-color:red;height:100%;left:0;position:absolute;top:0;width:5px}



._tabFolder{background-color:rgba(29, 33, 41, 1); cursor:pointer;position:relative;}
._tabFolder:hover{background-color:rgba(255,255,255,0.1)}
._tabFolder:active{background-color:rgba(29, 33, 41, 1)}

._itemPosition{align-items:center;display:flex}

._5bme ._sideFolder{background-color:#066cd2}
._iconText:hover ._1i5y,.uiPopover.selected ._1i5y{display:block}
._iconText{align-items:center;display:flex;justify-content:space-between;width:100%;margin-left:13px;}
<body style="background:grey;">
<div class="_tabFolder _itemPosition" role="presentation" style="height: 40px; user-select: none;">
<div class="_sideButton"></div>
<div class="_iconText" style="width: 215px">
<span style="color:white;">BUTTON 1</span>
</div>
</div>


<div class="_tabFolder _itemPosition" role="presentation" style="height: 40px; user-select: none;">
<div class="_sideButton"></div>
<div class="_iconText" style="width: 215px">
<span style="color:white;">BUTTON 2</span>
</div>
</div>
</body>

最佳答案

对于 CSS 你可以隐藏 <input type='checkbox''radio'>并使用 <label for= ' radio /复选框的 ID' ></label> .标签将充当按钮,而 chx/rad 将放置在标签之前,并将保持标签的“状态”持久(例如,更改为红色并无限期地保持红色。)状态将由 rad/是否确定。 chx 是 :checked .

例子

.radio:checked + .label { color:red }

一个 .radio 按钮是 :checked 紧接着它的 + 是一个 .label 文本变成红色+ 是一个 adjacent sibling combinator你也可以这样做:~ general sibling combinator .

您还可以使用 :target selector .拿一个<a> nchor 标签分配其 href属性元素的值 #id .然后给元素赋一个:target选择器。类似于 rad/chx & label 组合,它允许我们使用 CSS 动态更改元素样式并保持其持久性。

虽然该演示显示了“年长”兄弟(即单选按钮)和“年幼:兄弟(即标签)”关系,但该演示也可以轻松地在父子关系中工作(提示:删除 +)。请注意,<a>element:target 之间没有必要的关系(除了它们必须在同一个文档中。

引用资料

Checkbox/Radio Button & Label Hack

:target selector .

修改后的操作:https://jsfiddle.net/zer00ne/764k6qo0/

演示

/* Radio Buttons & Labels */


/* :checked & for='ID OF RADIO' */

.rad {
display: none
}

.lab {
border-radius: 9px;
border: 2px inset grey;
padding: 3px 5px;
font-size: 24px;
cursor: pointer;
margin: 20px 10px;
}

.lab::before {
content: 'WHITE';
}

.rad:checked+.lab {
background: red;
color: white;
}

.rad:checked+.lab::before {
content: '\a0\a0RED\a0\a0';
}


/* Anchor & Any Element */


/* href='#ID OF ELEMENT' & #ANY:target */

a {
display: inline-block;
margin: 0 5px;
color: yellow;
background: #000;
padding: 2px 4px;
}

a:first-of-type {
color: #ff4c4c
}

a:nth-of-type {
color: yellow
}

a:last-of-type {
color: lime
}

b {
display: block;
height: 48px;
width: 48px;
border-radius: 50%;
margin: 5px auto;
border: 3px outset grey;
background: rgba(0, 0, 0, .2)
}

#T1:target {
background: red;
}

#T2:target {
background: yellow
}

#T3:target {
background: green
}
<input id='R1' class='rad' name='rad' type='radio'>
<label id='L1' class='lab' for='R1'></label>

<input id='R2' class='rad' name='rad' type='radio'>
<label id='L2' class='lab' for='R2'></label>

<input id='R3' class='rad' name='rad' type='radio'>
<label id='L3' class='lab' for='R3'></label>

<hr>

<a href='#T1' target='_self'>STOP</a>
<a href='#T2' target='_self'>SLOW</a>
<a href='#T3' target='_self'>GO</a>


<b id='T1'>&nbsp;</b>
<b id='T2'>&nbsp;</b>
<b id='T3'>&nbsp;</b>

关于javascript - 单击父 div 时更改子颜色 div | CSS 伪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47233534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com