:target 为空时的 CSS 选择器

CSS selector when :target empty(:target 为空时的 CSS 选择器)
本文介绍了:target 为空时的 CSS 选择器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我需要一个 css3 选择器来定位一个元素,当 :target 等于元素的 id(简单)或当 :target 为空(不可能?).很难解释,我举个简单的例子.

I need a css3 selector to target an element when the :target equals the id of the element (easy) or when the :target is empty (impossible?). It’s hard to explain, so let me give you a simple example.

div {
  background: blue;
}
div:target, div:no-target {
  background: red;
}

当然 :no-target 伪类不存在 ;).不使用 Javascript 有没有办法解决这个问题?提前致谢!

But of course the :no-target pseudo class doesn’t exist ;). Is there a way around this without using Javascript? Thanks in advance!

推荐答案

叹息.我觉得我正在复活一个死去的话题,但它需要一个真正的答案.

Sigh. I feel like I'm resurrecting a dead topic, but it needs a real answer.

仅使用 CSS 就可以做到这一点,只需使用 :last-child 和 一般兄弟组合子,形式为 :target ~ :last-child:

It's possible to do this with CSS alone, just by using :last-child and a general sibling combinator, in the form of :target ~ :last-child:

.pages > .page:target ~ .page:last-child,
.pages > .page {
    display: none;
}

/* :last-child works, but .page:last-child will not */
.pages > :last-child,
.pages > .page:target {
    display: block;
}

这些规则适用于以下步骤:

The rules applies in the following steps:

  1. 隐藏所有页面
  2. 同时显示目标页面和最后一页
  3. 如果一个页面被定位,隐藏最后一页(.page:target ~ .page:last-child)

(现场示例)

显然,这与 旧版本中接受的答案非常相似,前面提到的相关帖子.

这篇关于:target 为空时的 CSS 选择器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

How to find a User ID from a Username in Discord.js?(如何从 Discord.js 中的用户名中查找用户 ID?)
Discord js reaction not detected(未检测到 Discord js 反应)
Joining a voice channel on ready (discord.js)(准备好加入语音频道(discord.js))
Cannot read properties of undefined when it shouldn#39;t be undefined in discord.js command handler(当不应该在 discord.js 命令处理程序中未定义时,无法读取未定义的属性)
Why messageReactionAdd do nothing discord.js(为什么 messageReactionAdd 什么都不做 discord.js)
How do I list all Members with a Role In Discord.Js(如何在 Discord.Js 中列出所有具有角色的成员)