相关疑难解决方法(0)

CSS选择以前的兄弟姐妹

我有一个进度条,有两个孩子(部分).每当这些孩子都徘徊时,进步及其子女的总高度就会发生变化.我设法解决了第一个使用的孩子,next sibling selector但我找不到第二个孩子的解决方案(黄色部分).到目前为止,我已经使用jQuery解决了这个问题,但我想在纯CSS中做到这一点.

小提琴:https://jsfiddle.net/zfh263r6/5/

$('#start').on({
  mouseenter: function () {
	  //$(this).css('height', '4px');
      //$( 'progress' ).css('height', '4px');
  },
  mouseleave: function () {
	  //$(this).css('height', '');
     // $( 'progress' ).css('height', '');
  }
});
Run Code Online (Sandbox Code Playgroud)
#progress_wrap {
    position: relative;
    height: 4px; /*max height of progress*/
    background: #f3f3f3;
}

progress {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    width: 100%;
    border:none;
    height: 2px;
    transition:all .25s ease-in;
    cursor: pointer;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
}

progress:hover, progress:hover + #start …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

6
推荐指数
1
解决办法
4693
查看次数

将此+后和此(n + 1)和之前悬停

jsfiddle.net/rqJAY/

HTML:

<table class="table_database_edit">
<tr><td>Magazyn wycieraczek</td><td>Edytuj</td><td>Usu?</td></tr>
<tr class="more" id=""><td colspan="3">aa</td></tr>
<tr><td>test</td><td>Edytuj</td><td>Usu?</td></tr>
<tr class="more" id=""><td colspan="3">aa</td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)

CSS:

tr.more{
    #display: none;
}
table.table_database_edit{
    width: 100%;
    border-collapse:collapse;
    border-spacing: 0;
}
table.table_database_edit  tr:nth-child(4n+3), table.table_database_edit  tr:nth-child(4n+4){
    background-color: #EFF0F1;
}
table.table_database_edit  tr:hover:nth-child(n) + tr:nth-child(n):after{
    background-color: #FFFFCC;
}
table.table_database_edit  tr:hover:nth-child(n+1) + tr:nth-child(n+1):before{
    background-color: #FFFFCC;
}
Run Code Online (Sandbox Code Playgroud)

我有桌子.每两行都是一组.这些组交替背景颜色.第1行和第2行是白色的.第3行和第4行是灰色的.第5行和第6行是白色的.等等.

当您将鼠标悬停在某个组上时,我想将背景颜色设置为黄色.我怎么能这样做?

css

5
推荐指数
1
解决办法
1250
查看次数

CSS:选择以前的兄弟姐妹

我有一个列表,想要选择我正在徘徊的上一个和下一个

<ul>
    <li>Item1</li>
    <li>Item1</li>
    <li>Item1</li>
    <li>Item1</li>
    <li>Item1</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我可以使用"+"选择器选择下一个兄弟.但是有可能获得前一个吗?

ul li:hover + li {
    color:red;
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试ul li + li:hover但它不起作用.不能相信我没有可以使用的棘手黑客.

当然我可以通过Javascript轻松完成这项工作,但我不喜欢使用JS,我可以用CSS获得相同的结果.

html css css-selectors

5
推荐指数
1
解决办法
2万
查看次数

StackExchange黑名单

假设您对我的帖子感到恼火,并想隐藏Stack Overflow的所有评论.我知道如何创建自定义CSS来隐藏我的用户名:

a[href$="what"] {
    display:none !important;
}
Run Code Online (Sandbox Code Playgroud)

不幸的是CSS不允许我引用父元素,因此这将留下注释的文本.

如何将父级或前级兄弟隐藏到该链接标记?


我不是要求CSS选择器!我知道它不存在.请在结束前阅读问题(并在提供答案之前告诉我在我的问题中已经提到的内容).

我问你如何在没有相关CSS选择器的情况下选择DOM元素.我相信有JS解决方案,但我无法使用它们.也许还有其他选择,因此我不是特别要求JS.如果你告诉我如何使用PHP解析页面并通过另一个域显示它,那对我来说完全没问题.

Greasemonkey可能会这样做的提示根本没有帮助.解释如何做到这一点.让它在您的机器上工作并发布详细说明.我无法使用任何可用的脚本.

javascript css greasemonkey

5
推荐指数
1
解决办法
105
查看次数

了解z-index堆叠顺序

我对使用z-index决定堆栈顺序感到有点困惑.

我不太明白浏览器如何将带有position属性的元素与没有它的元素一起处理.

是否有一般规则来决定元素的堆栈顺序是否已明确定位元素?

赞赏不同情况的例子.一般来说:

  1. <div>具有位置设定且没有位置设定的混合兄弟姐妹.
  2. 嵌套<div>s与兄弟s混合,<div>位置设置且没有位置设置.

css z-index css-position

5
推荐指数
1
解决办法
3857
查看次数

选中前一个单选按钮的CSS选择器

我正在通过一些单选按钮构建一个小星级CSS评级,并使其正常工作.我有一个问题是能够在选择的收音机之前填写星星,所以如果选择星号3,星号1和2也会被填写.这是我到目前为止所拥有的:

#review-form input,
#review-form textarea {
  background: none repeat scroll 0 0 #333333;
  border: 0 none;
  color: #fff;
  margin: 0;
  max-width: 100%;
  padding: 7px 4px;
}
#review-form .radio {
  display: inline-block;
}
#review-form input[type=radio] {
  display: none;
}
#review-form input[type=radio] + label {
  display: block;
}
#review-form input[type='radio'] + label:before {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-right: 8px;
  width: 23px;
}
#review-form input[type=radio] + label:before {
  content: "\f006";  /* Radio Unchecked …
Run Code Online (Sandbox Code Playgroud)

html css css3

5
推荐指数
1
解决办法
841
查看次数

如何使用普通的HTML代码添加切换效果?

我希望上面的代码应该在我的网站上有下拉切换效果.

默认情况下,当观众刷新页面时,第一个框必须显示下拉框,当单击下一个框时,前面的下拉框应隐藏自身.

怎么做?

.maindrop {
    width: 49%;
}
.bar {
    padding: 20px;
    color: white;
    background: #1FB5AC;
    display: block;
    font-family: Times;
    text-decoration: none;
    font-size: 16px;
    transition: .2s ease-out;
    margin-bottom: .1cm;
}
.bar:hover {
    background: gray;
}
.dropbox {
    max-height: 0;
    transition: .5s ease-out;
    overflow: hidden;
    width: 100%;
}
.dropbox:target {
    max-height: 300px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="maindrop"  style="float: right">
        <div class="fold default">
            <a class="bar" href="#tab5">Speaker 5</a>
            <div class="dropbox" id='tab5'>
                Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam diam enim, interdum eget iaculis …
Run Code Online (Sandbox Code Playgroud)

html css

5
推荐指数
1
解决办法
102
查看次数

如果兄弟元素存在于PURE CSS中,则有条件地设置样式

我有以下结构,其中第二个元素可能出现也可能不出现.

<div class="wrapper">
    <div class="firstElement"></div>
    <div class="secondElement"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

我想有条件地设置样式,.firstElement如果.secondElement存在的话.

有没有办法用PURE CSS做到这一点?有兄弟选择器/父选择器吗?

谢谢!

html css css3

5
推荐指数
1
解决办法
4268
查看次数

在多个容器中使用 flex order 属性

如果我有以下 HTML 标记:

<div class="wrapper">
  <div id="container-1">
    <div class="child-1-1"></div>
    <div class="child-1-2"></div>
  </div>
  <div id="container-2">
    <div class="child-2-1"></div>
    <div class="child-2-2"></div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我可以将flex的显示应用到wrapper,然后使用order使container-2出现在container-1之上。

我希望元素的最终顺序是:

  1. child-2-1
  2. child-1-1
  3. child-1-2
  4. child-2-2

我基本上要的是两个容器的孩子们假装好像他们的父母不在那里,而是从外部把他们的订货包装

这当然可以通过复制组件和根据断点隐藏/显示或通过 JS 来实现 - 所以没有建议这些的点。

html css flexbox

5
推荐指数
1
解决办法
1578
查看次数

CSS:基于相邻元素类的条件格式

我有一些相邻的span标签,其样式display: inline-block;如下:

span.mark {
  background-color: yellow;
  display: inline-block;
  vertical-align: center;
  border-width: 1px;
  border-color: red;
  border-style: solid;
  border-radius: 3px;
}
Run Code Online (Sandbox Code Playgroud)
<p>Some <span class="mark">standalone</span> test. Some <span class="mark">continuous </span><span class="mark">elements </span><span class="mark">that</span> should be formatted together.</p>

<p>Some <span class="mark">normal </span><b><span class="mark">and strong</span></b> text that should be formatted together.</p>
Run Code Online (Sandbox Code Playgroud)

所以目前这些span标签都有自己的小边框.但是,我希望它们看起来像它们周围只有一个边界.所以,技术上,外部应该有border-width-left: 1px;第一个和border-width-right: 1px;最后一个,中间应该有border-width: 1px 0px;.

有没有办法在CSS中这样做?基本上规则应该是:"如果这是带有标记类的跨度,并且我之前和之后的元素都是带有标记类的跨度,则应用中间元素样式.如果这是带有标记类的跨度,并且我之前的元素是不是带有标记样式的元素,而在我之后的元素是带有标记样式的span元素,应用左元素样式.等等......"

我知道有span.mark:beforespan.mark:after,但我实际上并不想在当前元素之前或之后设置元素的样式.我希望在它之前和之后的最佳状态上设置当前的风格.另外,我需要检查:before:after元素的类.

编辑: 也许我的例子太简单了.<span>给定的标签中会有多个标签<p>.整体:first-of-type …

css

5
推荐指数
1
解决办法
279
查看次数