当前位置: 首页 > 编程日记 > 正文

Spoooooky CSS 选择器

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

让我们今年有一些万圣节主题的帖子精神!我会从超过 GRAVE.eR.CSS选择器中挑选一些将冻结你骨头的选择器。也许不可能,但他们至少有点怪异。

迟钝的猫头鹰选择器(the lobotomized owl selector)

Heydon Pickering使这一个在两年前出名。 我看起来像这样:

* + * {margin-top:1.5em;
}

这个想法是,只有具有先前兄弟的元素在顶部获得边缘。 所以你没必要做像下面的东西(codepen):

.the-last-one-so-don't-put-margin-on-me {margin-bottom: 0;
}

相反,你甚至有点免费的间距:

<div class="module"><div>Owl</div><div>Owl</div><div>Owl</div><div>Owl</div>
</div>
* + * {margin-top: 1rem;
}.module {border: 0.5rem solid #AF4629;padding: 1rem;background: #F59131;
}
.module > div {padding: 1rem;background: #efefef;
}
.module * + *::after {content: " (lobotomized)";color: #AF4629;font-style: italic;
}body {background: black;margin: 0;padding: 1rem;
}

你可以看到其他人也在玩弄它。

Mr. Ghost 选择器

这个小家伙是如此奇怪的字符,我的WordPress网站甚至不会保存他们,所以让我们在一个Pen(嵌入可能看起来很奇怪,试图看看CodePen本身):

html:

<div class="༼•̫͡•༽">Mr. Ghost
</div><div class="?">Mrs. Ghost
</div>

css

.༼•̫͡•༽ {background: GhostWhite;color: darken(GhostWhite, 10);font-family: 'Creepster', cursive;padding: 3rem;text-align: center;font-size: 3rem;margin-bottom: 1rem;
}.? {background: AntiqueWhite;color: darken(AntiqueWhite, 15);font-family: 'Creepster', cursive;padding: 3rem;text-align: center;font-size: 3rem;
}body {margin: 0;padding: 1rem;
}

说到不寻常的字符,请记住表情符号也是有效的!

<div class="&#x1f47b;">Mrs. Ghost
</div>
.&#x1f47b; {}

怪物选择器

这些选择器也太奇葩了! 但在这种情况下,其中一些字符需要在CSS中转义。 像从蒙特塞拉岛逃离。 或者其他的东西。 幸运的是Mathias Bynens有一个工具。

这样意味着我们可以这样做(codepen):

<div class="~⁰෴⁰~">Monster
</div>
.\~⁰෴⁰\~ {background: lightgreen;text-align: center;padding: 2rem;
}

或者是一些毒牙:

<div ^^=^^>OoooOOOO FANGS
</div>
[\^\^^=\^\^] {}

另一部分被切除的选择器

the-brain:empty {color: green;
}

什么样的选择器是大脑?这是我们创造了我们自己的疯狂科学像弗兰肯斯坦的怪物元素。或者只是创建一个自定义元素或什么。

<template>The brain!
</template>
var tmpl = document.querySelector('template');var brainProto = Object.create(HTMLElement.prototype);brainProto.createdCallback = function() {var root = this.createShadowRoot();root.appendChild(document.importNode(tmpl.content, true));
};var brain = document.registerElement('the-brain', {prototype: brainProto
});

(或许这些天应该是使用customElements.define()?我不知道。)

所以现在我们的原始选择器将匹配:

<the-brain></the-brain>

但是按选择器的建议,如果我们这样做它将不匹配:

<the-brain>Fallback content inside.
</the-brain>

它甚至不匹配:

<the-brain> </the-brain>

否者我们将做the-brain:blank {},但是:blank到目前为止也不支持。

不敏感选择器

什么是不敏感? 除了大多数东西以外的。 咦,这仍然是一个真正奇怪的选择器,对不对?

a[href$=".zip" i] {}

“i”在结尾处告诉属性值,“.zip”可以匹配大小写字符。

有一个来自Wes Bos:

只有正直的摊位选择器

斑马条纹是容易的,对吗?

tr:nth-child(odd) {background: WhiteSmoke;
}

但是如果我们通过将类名从我们的魔法javascript能见度应用到某些行一定行:

...
<tr><td></td></tr>
<tr class="BANISHED"><td></tr></tr>
<tr><td></td></tr>
...
.BANISHED {display: none;
}

现在我们的斑马条纹是全乱了,像是很多坚果都掉进锅中释放。

选择器4级修复了这个问题:

tr:nth-child(odd of li:not(.BANISHED)) {background: WhiteSmoke;
}

这意味着“奇数”只是仍然可见的行计算,斑马条纹将保持不变。它在任何地方都不支持。

The Knife Through The Guts Selector

还记得我们创建的自定义元素吗? <the-brain>? 让我们说,该元素的模板是这样的,在其中有一些实际的HTML:

<template><div class="braaaain">The brain!</div>
</template>

正如我们已经看到的,你可以使用CSS元素会级联到有如你所期望的。但你不能直接把它放在里面的元素。

/* works fine */
the-brain {color: pink;
}
/* But you can't reach inside like this */
.braaaain {color: red;
}

它像是一个封装好的web组件,你能插入到里面,像这样:

html /deep/ .braaaain {color: red;
}

这只适用于Blink,但我不知道它是标准的还是什么。 跨浏览器兼容性的错误。

ID选择器

#container {}

原文出处:《Spoooooky CSS Selectors》

转载时请注明:来自w-rain的个人博客

转载于:https://my.oschina.net/myrainspace/blog/777498

相关文章:

关于无法创建aps.web项目的解决办法

出处&#xff1a;CSDN 作者&#xff1a;ahking <script languageJavaScript src"/ad/ad.js"></script> 1、当站点主目录没有创建应用程序&#xff1a; 通过FP扩展虚拟目录的方式来建立WEBAPP,步骤如下&#xff1a; &#xff08;1&#xff09;、右击站…

国内ntp时间服务器ip地址

NTP&#xff08;Network Time Protocol&#xff09;是由美国德拉瓦大学的David L. Mills教授于1985年提出&#xff0c;除了可以估算封包在网络上的往返延迟外&#xff0c;还可独立地估算计算机时钟偏差&#xff0c;从而实现在网络上的高精准度计算机校时&#xff0c;它是设计用…

谷歌顶级量子科学家详述他为何从谷歌辞职

加州大学圣塔芭芭拉分校&#xff08;UCSB&#xff09;的教授John Martinis作者 | Paul Smith-Goodson译者 | 天道酬勤&#xff0c;责编 | Carol 约翰马丁尼斯&#xff08;John Martinis&#xff09;教授从Google辞职的消息在整个量子学界引起了轩然大波。消息宣布几天后&#x…

论文笔记之:Generative Adversarial Text to Image Synthesis

Generative Adversarial Text to Image Synthesis ICML 2016 摘要&#xff1a;本文将文本和图像练习起来&#xff0c;根据文本生成图像&#xff0c;结合 CNN 和 GAN 来有效的进行无监督学习。 Attribute Representation: 是一个非常具有意思的方向。由图像到文本&#xff0c;可…

ADO.NET 2.0 中的架构

Bob BeaucheminDevelopMentor 适用于&#xff1a;Microsoft ADO.NET 2.0Microsoft Visual Studio 2005C# 编程语言 摘要&#xff1a;了解在 ADO.NET 中对于从您的数据源访问元数据的增强支持。下载相关的 SchemasSample.exe 示例代码。 本页内容 深入了解新的公共元数据 API究…

Android实现程序前后台切换效果

本文演示如何在Android中实现程序前后台切换效果。 在介绍程序实现之前&#xff0c;我们先看下Android中Activities和Task的基础知识。 我们都知道&#xff0c;一个Activity 可以启动另一个Activity,即使这个Activity是定义在别一个应用程序里的&#xff0c;比如说&#xff0c;…

如果特斯拉制造相机的梦想像激光雷达一样真正实现,它可能会帮助到更多同行...

这张来自伪激光雷达论文的图片显示了旧的黄色实点云作者 | Brad Templeton译者 | 天道酬勤&#xff0c;责编 | Carol特斯拉 CEO 埃隆马斯克&#xff08;Elon Musk&#xff09;对自动驾驶激光雷达&#xff08;3D图像技术&#xff09;的看法是众所周知的。他不打算在特斯拉里使用…

java分享第五天(数组)

1 声明数组变量&#xff1a; double[] mylist; or double mylist[]; 2 创建数组&#xff1a; 可以通过使用new运算符使用以下语法创建一个数组&#xff1a; arrayRefVarnew dataType[arraySize]; 上面的语句做了两件事&#xff1a; 它创建一个数据使用new dataType[…

效率!效率!效率!

原著&#xff1a;Mark Davis 翻译&#xff1a;onefi 2004年4月21日 摘要&#xff1a; 此篇文章包括了一些在网页设计中时常用到的脚本。我们可以清晰的体会到其中的执行速度。这将有助于提高您的动态网页的速度。 导言&#xff1a; 自从有了IE4.0以后&#xff0c;我们所看到的…

Android UI Button 和GridView 的设计--优化(2)

Android 按钮的UI设计&#xff0c;ListView 以及GridView的UI设计 一.按钮的状态 我们一般搞UI设计,按钮通常有三个状态&#xff1a;normal(正常状态);focus(焦点状态),pressed(按下状态)。如下图所示: 我们会在res/drawable目录下定义一个资源文件&#xff0c;比如我们本例中要…

玩转社区开源贡献,看这篇就够了!

来源 | TensorFlow本文来自社区投稿与征集。作者唐源&#xff0c;现任蚂蚁集团技术专家&#xff0c;目前专注于建立 AI 基础架构和自动机器学习平台。本文转自&#xff1a;https://zhuanlan.zhihu.com/p/165098355作为最早一批非谷歌的 TensorFlow 社区贡献者&#xff0c;同时也…

grub2 命令行进入系统

有时候grub引导可能出问题&#xff0c;因此我们需要在grub界面利用命令行进入系统。下边就做一个简单的介绍。1、在grub界面&#xff0c;按c进入命令行界面2、命令行输入“ grub>set root(hd ”之后按tab键&#xff0c;查看你的硬盘&#xff0c;hd0表示第一块硬盘&#xf…

梯度中心化,一行代码加速训练并提升泛化能力

来源 | 晓飞的算法工程笔记优化器(Optimizer)对于深度神经网络在大型数据集上的训练是十分重要的&#xff0c;如SGD和SGDM&#xff0c;优化器的目标有两个&#xff1a;加速训练过程和提高模型的泛化能力。目前&#xff0c;很多工作研究如何提高如SGD等优化器的性能&#xff0c;…

Microsoft程序员测试题

原创&#xff1a;onefi http://www.frontfree.net/2003年6月1日 最近大家在网站上看到不少Microsoft的测试题&#xff0c;引来不少的眼光。我在这里把所有的测试题加以整理&#xff0c;再附上自己的答案。&#xff08;个别题目答案有多种&#xff0c;文本仅代表作者的思路&a…

裸centos安装PCRE时报错解决

2019独角兽企业重金招聘Python工程师标准>>> no acceptable C compiler found in $PATH由于没有gcc的编译环境引起的&#xff0c;yum install gcc就ok unrecognized option -DHAVE_CONFIG_H由于没有gcc-c的编译环境引起的&#xff0c;yum -y install gcc-c 转载于:…

mysql删除开放用户权限

来访用户ODBC 1,在本地的cmd中用root用户进入mysql2,创建一个ODBC的用户create user ODBClocalhost;查看用户是否创建成功select user,host from mysql.user;3,将所有的权限开放给ODBC用户grant all on *.* to ODBClocalhost;查看ODBC用户的权限show grants for ODBC localhost…

AI不止能美颜,美妆迁移这样做 | 赠书

本文内容节选自《深度学习之人脸图像处理&#xff1a;核心算法与案例实践》&#xff0c;作者言有三。美颜和美妆是人脸中很常见的技术&#xff0c;在网络直播以及平常的社交生活中都有很多应用场景。本文重点介绍的是人脸妆造迁移的核心技术及其相关资源。想要了解关于深度学习…

ASP.Net中自定义Http处理及应用之HttpModule篇

HttpHandler实现了类似于ISAPI Extention的功能&#xff0c;他处理请求(Request)的信息和发送响应(Response)。HttpHandler功能的实现通过实现IHttpHandler接口来达到。而HttpModule实现了类似于ISAPI Filter的功能。 HttpModule的实现HttpModules实现了类似于ISAPI Filter的功…

未处理的异常导致基于 ASP.NET 的应用程序意外退出

问题具体见&#xff1a;http://q.cnblogs.com/q/34874/ 相应站点的w3wp.exe 会意外终止 EventLog中的信息&#xff1a; An unhandled exception occurred and the process was terminated. Application ID: DefaultDomain Process ID: 43644 Exception: System.Runtime.Seri…

Git 执行更改

Jerry 克隆库&#xff0c;他决定实现基本字符串操作。于是&#xff0c;他创建文件string.c&#xff0c;在添加内容到 string.c 会这个样子。 #include <stdio.h> int my_strlen(char *s) { char *p s; while (*p) p; return (p - s); } int main(void) { int i; char *s…

静态属性和静态方法2 - C++快速入门22

静态属性和静态方法2 让编程改变世界 Change the world by program 静态方法 嗯&#xff0c;还是静态方法&#xff1f;&#xff01;这阵子有鱼油表示对该方法的特色还是有点云里雾里还有那个神神兮兮的this指针。。。 所以小甲鱼保持务必让你彻底领悟的精神继续和大家探讨&…

浅析.Net共享程序集编程

作者&#xff1a;宋华 赛迪网Net结构里的程序集Assembly是自我描述的安装单元&#xff0c;它在应用程序域(AppDomain)中运行。您必须首先将程序集加载到应用程序域中&#xff0c;然后才能运行该应用程序&#xff0c;并且&#xff0c;同一程序集可以加载到多个应用程序域中&a…

“崩溃!我再也不搞 AI 了”谷歌 AI 专家:别让你的方法打败你!

今天&#xff0c;想跟大家聊聊 Python 人工智能。最近几年&#xff0c;我看过市面上很多 Python和人工智能的教程&#xff0c;基本都是先介绍Python基本语法、dict、tuple 等基本库的使用&#xff0c;最后学习机器学习、深度学习的常用算法......但我与 Google 人工智能开发专家…

Spring MVC 相关资料整理

来源于&#xff1a;http://www.cnblogs.com/ylhssn/p/4062757.html 1、概述 Spring MVC是一种基于Java实现MVC设计模式的请求驱动类型的轻量级Web框架&#xff0c;即使用了MVC架构模式的思想&#xff0c;将web层进行解耦&#xff0c;基于请求-响应模型帮助我们简化日常web系统的…

Wireless-N Configuration

Wireless-N Configuration/Zh CnContents [hide]1 关于Wireless N的一般信息2 基本设置2.1 20 MHz vs 40 MHz2.1.1 2.4GHz频段的描述2.1.2 2.4GHz频段表2.2 无线安全设置2.3 高级设置3 Problems and Resolution3.1 Actual Speeds3.2 Testing3.3 Device Drivers4 Device Specifi…

为.Net程序集添加资源

作者&#xff1a;宋华 本文选自&#xff1a;赛迪网 2002年12月06日 在.Net结构中&#xff0c;程序集Assembly(也称着程序集或托管Dll)是自我描述的安装单元&#xff0c;它可以只包括一个PE&#xff08;可移植可执行&#xff09;格式的Dll或exe文件&#xff0c;也可以由多…

这5个 AI 用例,转变了传统商务沟通

作者&#xff5c;Lanre Onibalusi译者 |天道酬勤&#xff0c;责编 | 晋兆雨封图 | CSDN 付费下载自视觉中国很少有人会想到这样一种情景&#xff1a;世界上几乎有一半的国家处于封锁状态&#xff08;可能长达数周或几个月&#xff09;&#xff0c;并且大多数人的工作能力也受到…

cocos2dx 3.x(动态改变精灵的背景图片)

//更换精灵CCSprite的图片有两种方式。 //直接通过图片更换 //使用setTexture(CCTexture2D*)函数&#xff0c;可以重新设置精灵类的纹理图片。 // auto bg Sprite::create(); Texture2D* texture Director::getInstance()->getTextureCache()->addImage("bg2.png&…

如何在.NET中创建服务型组件

作者&#xff1a;张劲松 本文选自&#xff1a;赛迪网 2002年12月03日 对于在WINDOWS上作过一些开发的程序员来说&#xff0c;COM&#xff0b;应该是不会感到陌生的吧。COM&#xff0b;代表了Microsoft在COM技术平台上的最高水平&#xff0c;也是Microsoft藉以和J2EE抗衡的…

flex viewstack的简单应用

1 Flex API里面介绍viewstack&#xff1a; MX ViewStack 导航器容器由一组彼此上下堆叠的子容器组成&#xff0c;其中一次只可以显示一个子容器。选择另一个子容器后&#xff0c;它将显示在原来子容器的位置处&#xff0c;所以看起来好像此子容器替换了原来的子容器。…