- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
例如,假设我有一个如下所示的 HTML。我不是在选择 ul 的父元素吗?
ul
margin: 50px
ul.test
li hello
li how are u
最佳答案
为了理解它们的含义,您需要理解选择在CSS
中的含义。 ( parent 很简单:)。
选择器 是指 CSS
指向的元素适用。所以,使用 CSS
,如果您有选择器(任何选择器),则不能将更改应用到任何父部件。您只能将它们应用于最后一部分。给 child (或者,在某些情况下,给直系或远方的 sibling )。
(这里的简单规则是确定样式将应用于哪个元素的部分始终是选择器的最后部分)。
让我们来看看这个简单的选择器:
ul {
/* rules apply to all ul */
}
我可以制定一个规则来设计它所有的 child :
ul > * {
/* rules apply to * (all children of ul) */
}
但我无法制定规则来设置其父项的样式:
* < ul {
/* rules don't apply. this is invalid */
}
每当我制定规则时,比如...
* > ul {
/* rules apply to any ul that is a child of * (any element) */
}
样式始终应用于选择器中的最后一项,从不应用于其中一个父项。
这就是为什么 您不能根据选择其中一个子项来设置父项的样式。您需要选择它。明白了吗??CSS
中没有父选择器的原因.
哎呀,我给你举个例子。
考虑这个标记,但想象它复杂 10 倍(让我们假设有一群人在其中添加/删除部分以便它可以具有巨大的深度):
<div>
<whatever></whatever>
</div>
<span>
<whatever></whatever>
</span>
<ul>
<li>
<whatever></whatever>
</li>
<li></li>
<li>
<whatever></whatever>
</li>
</ul>
现在,请创建一个 CSS
这将使 <whatever>
的所有 parent (单级祖先)成为有一个红色的背景,无论他们在哪里DOM
.可以吗?
这里有一些消息:你不能。
他们最接近实现这一目标的时间是 :has()
选择器已被提议,但已被拒绝。这个选择器需要 CSS
解析器返回,它总是前进。这就是为什么它很快,无论设备/浏览器/系统如何。 CSS 总是很快的。
因为它没有:has()
选择器(或 <
组合器)。
补充说明:正如@Maximus 在评论中指出的那样, shadow DOM
elements 提供了一种方法来使用 :host
选择当前影子 DOM 实例的顶级元素。 .它不是一个正确的父选择器,因为它不提供选择影子 DOM 内的父元素的方法,而只提供入口点(与普通 DOM 的接触点),让您可以选择将规则应用于当前影子 DOM 实例,而不应用于其他实例。
关于javascript - 人们说 css 中没有父选择器是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42312454/
我之前让 dll 注入(inject)器变得简单,但我有 Windows 7,我用 C# 和 C++ 做了它,它工作得很好!但是现在当我在 Windows 8 中尝试相同的代码时,它似乎没有以正确的方
我正在尝试制作一个名为 core-splitter 的元素,该元素在 1.0 中已弃用,因为它在我们的项目中起着关键作用。 如果您不知道 core-splitter 的作用,我可以提供一个简短的描述。
我有几个不同的蜘蛛,想一次运行所有它们。基于 this和 this ,我可以在同一个进程中运行多个蜘蛛。但是,我不知道如何设计一个信号系统来在所有蜘蛛都完成后停止 react 器。 我试过了: cra
有没有办法在达到特定条件时停止扭曲 react 器。例如,如果一个变量被设置为某个值,那么 react 器应该停止吗? 最佳答案 理想情况下,您不会将变量设置为一个值并停止 react 器,而是调用
https://code.angularjs.org/1.0.0rc9/angular-1.0.0rc9.js 上面的链接定义了外部js文件,我不知道Angular-1.0.0rc9.js的注入(in
我正在尝试运行一个函数并将服务注入(inject)其中。我认为这可以使用 $injector 轻松完成.所以我尝试了以下(简化示例): angular.injector().invoke( [ "$q
在 google Guice 中,我可以使用函数 createInjector 创建基于多个模块的注入(inject)器。 因为我使用 GWT.create 在 GoogleGin 中实例化注入(in
我在 ASP.NET Core 1.1 解决方案中使用配置绑定(bind)。基本上,我在“ConfigureServices Startup”部分中有一些用于绑定(bind)的简单代码,如下所示: s
我在 Spring MVC 中设置 initBinder 时遇到一些问题。我有一个 ModelAttribute,它有一个有时会显示的字段。 public class Model { privat
我正在尝试通过jquery post发布knockoutjs View 模型 var $form = $('#barcodeTemplate form'); var data = ko.toJS(vm
如何为包含多态对象集合的复杂模型编写自定义模型绑定(bind)程序? 我有下一个模型结构: public class CustomAttributeValueViewModel { publi
您好,我正在尝试实现我在 this article 中找到的扩展方法对于简单的注入(inject)器,因为它不支持开箱即用的特定构造函数的注册。 根据这篇文章,我需要用一个假的委托(delegate)
你好,我想自动注册我的依赖项。 我现在拥有的是: public interface IRepository where T : class public interface IFolderReposi
我正在使用 Jasmine 测试一些 Angular.js 代码。为此,我需要一个 Angular 注入(inject)器: var injector = angular.injector(['ng'
我正在使用 Matlab 代码生成器。不可能包含代码风格指南。这就是为什么我正在寻找一个工具来“ reshape ”、重命名和重新格式化生成的代码,根据我的: 功能横幅约定 文件横幅约定 命名约定 等
这个问题在这里已经有了答案: Where and why do I have to put the "template" and "typename" keywords? (8 个答案) 关闭 8
我开发了一种工具,可以更改某些程序的外观。为此,我需要在某些进程中注入(inject)一个 dll。 现在我基本上使用这个 approach .问题通常是人们无法注入(inject) dll,因为他们
我想使用 swing、spring 和 hibernate 编写一个 java 应用程序。 我想使用数据绑定(bind)器用 bean 的值填充 gui,并且我还希望它反射(reflect) gui
我有这段代码,当两个蜘蛛完成后,程序仍在运行。 #!C:\Python27\python.exe from twisted.internet import reactor from scrapy.cr
要点是 Spring Batch (v2) 测试框架具有带有 @Autowired 注释的 JobLauncherTestUtils.setJob。我们的测试套件有多个 Job 类提供者。因为这个类不
我是一名优秀的程序员,十分优秀!