CSS Combinators

Link to W3Schools

body p = body 里的所有 p descendant
body > p = body first child layer 所有的 p
div + p = div next p (must be next element and only get 1, 如果 next 是 text node or comment is ok) 
div ~ p = div next all p (可以有间隔, get many)
 

CSS Pseudo-classes

Link to W3Schools

p:first-child = p element 同时它是某个 element 的 first child

CSS Pseudo-elements

Link to W3Schools

伪元素用双分号 ::

比较常看到的使用场景, 第一个字特别大

p::first-letter {
color: #ff0000;
font-size: xx-large;
}

前 / 后插入图片

h1::before {
content: url(smiley.gif);
}

user selection

::selection {
color: red;
background: yellow;

不是所有 element 都可以插入伪元素的, 比如 img 就不行.

参考: stackoverflow – Does :before not work on img elements?

CSS Image Sprites

Link to W3Schools

以前常用于把多个 icon 放到 1 个 image 里.

通过 background-image + position 调出图片然后显示某个区域而已

CSS Attribute Selectors

Link to W3Schools

[target] = 有 attribute "target"

[target="_blank"] = 有 attribute "target" 同时 attribute value 是 "_blank"

[title~="flower"] = attribute "title" 同时 value contains a space-separated list of "flower" (e.g. "flower abc", "abc flower", not ok: "abc-flower", "flowerAbc")

[title*="flower"] = attribute "title" 同时 value contains "flower" (没有 space-separated 概念)

[class|="top"] = attribute "class" 同时 value starts with top (必须是完整字, 或者 hypen, e.g. "top", "top-abc", "top-xyz", not ok: "topcontent,", "topAbc") 注: 所以 class 最好还是用 hypen 不要用 camelcase 嘛.

[class^="top"] = attribute "class" 同时 value starts with top 了 "不需要完整字"

[class$="test"] = attribute "class" 同时 ends with test "不需要完整字"

*, ^, $, contains, starts with, ends with 和正则一样, 很好记.

~, | contains, starts with 比较怪.

CSS Forms

Link to W3Schools

input + icon

用 background-image + padding 来做的

去掉 textarea resize

{ resize: none; }

CSS Counters

Link to W3Schools

可以用 CSS 来做 index

CSS 长这样

CSS Units

Link to W3Schools

Absolute Lengths

px, cm, mm

in (inch)  1in = 96px = 2.54cm (电脑 dpi 的情况)

pt (point) 1 pt = 1/72 inch

pc (1pc = 12 pt)

Relative Lengths

em, rem, %,

vw, vh (对应 viewport 的 percentage, 1vw = 1% of viewport width)

冷门的: ex, ch, vmin, vmax

Default Unit

没有 default unit 的, 除了 0 可以不用放 unit, 其它都得放. 参考: CSS Default Units

CSS Specificity

Link to W3Schools

CSS 的优先级是有点复杂的. (CSS order logic)

它有一个跑分机制

4 个 Levels:

Inline styles,

IDs, Classes,

attributes and pseudo-classes,

Elements and pseudo-elements

Start at 0, add 1000 for style attribute, add 100 for each ID, add 10 for each attribute, class or pseudo-class, add 1 for each element name or pseudo-element.

如果同分那就下面覆盖上面.

例子: 一个 div 有 id 也有 class

<div id="dada" class="tata">asdd</div>

CSS

#dada {
background-color: green;
}
.tata {
background-color: red;
}

最终结果是 green, 虽然 .tata 在下面, 但是由于 id add 100, class 只是 add 10, 所以 id 分数比较高.

虽然说 add 10 for each attribute, 按理说我只要有超过 10 个 attribute 就可以超越 id 的 100 分, 但我测试了没有.

所以它的累加只是在平级的时候可以区分, 不是拿来越级的.

!important

#myid {
background-color: blue !important;
}

important 就无视跑分了, 但是如果 2 个 !important 的话就依然看分数

CSS Math Functions

calc, max, min

常用方式

width: calc(100% - 100px);
width: max(50%, 300px);

CSS – W3Schools 学习笔记 (2)的更多相关文章

  1. css居中学习笔记

    css居中学习笔记 一.水平居中 以下面的代码为例: <body> <div class="parent"> <div class="chi ...

  2. CSS 3 学习笔记

    css 3 学习笔记 文本: word-wrap : normal | break-word取值:normal:    控制连续文本换行.break-word:    内容将在边界内换行.如果需要,词 ...

  3. (2)《Head First HTML与CSS》学习笔记---img与基于标准的HTML5

    1.浏览器处理图像的过程: 1.服务器获取文件,显示出文本结构,以及预留默认的大小给<img>(如果该<img>有width-1值和height-1值,则根据这个值提前设好页面 ...

  4. CSS入门学习笔记

    CSS入门学习笔记一.CSS简介1.什么是CSS?2.为什么使用CSS?3.CSS的作用二.CSS语法1.CSS基础语法2.CSS注释语法3.CSS应用方法三.CSS选择器1.元素选择器2.类选择器3 ...

  5. 【干货】Html与CSS入门学习笔记1-3

    从23号开始用了4天时间看完了<Head First Html与CSS>这本书,本书讲解方式深入浅出,便于理解,结合习题,便于记忆,是一本不错的入门书.下面是本书的学习笔记: 一.认识HT ...

  6. (6)《Head First HTML与CSS》学习笔记---结尾、《HTML5权威指南》读书笔记

    1.内联元素的外边距.内边距与块元素稍有不同. 如果一个内联元素四周都增加外边距,只能看到左边和右边会增加空间:你也可以对内联元素的上下增加内边距,不过这个内边距不会影响包围它的其他内联元素的间距—— ...

  7. HTML&CSS基础学习笔记1.16-单元格间距和表格主体

    上一篇讲html学习笔记,讲过了合并单元格,那么今天就来介绍下如何控制单元格的间距,以及表格主体的相关知识. 单元格间距 在上个知识点的显示结果中你可能发现了,单元格与单元格之间有一小段空白.这是由& ...

  8. HTML&CSS基础学习笔记—创建列表

    创建一张表格 很多时候我们需要在网页上展示一些数据,使用表格可以很好的来展示数据. 在HTML中<table>标签定义 表格. <table> </table> 添 ...

  9. HTML&CSS基础学习笔记1.32-选择器是什么

    选择器是什么 选择器是CSS样式为了定位页面上的任意元素的一种方法. 选择器主要分为:元素标签选择器.通用选择器.类选择器.ID选择器.属性选择器.组合选择器.伪类选择器.伪元素选择器. 先做个了解, ...

  10. HTML&CSS基础学习笔记1.31-像素和相对长度

    像素和相对长度 之前的笔记中,我们提到过用属性width.height来设置图片的尺寸,它们的单元都是”px(像素)”.长度单位总结一下,目前比较常用到px(像素).em.% 百分比,要注意其实这三种 ...

随机推荐

  1. js需要同时发起百条接口请求怎么办?--通过Promise实现分批处理接口请求

    如何通过 Promise 实现百条接口请求? 实际项目中遇到需要发起上百条Promise接口请求怎么办? 前言 不知你项目中有没有遇到过这样的情况,反正我的实际工作项目中真的遇到了这种玩意,一个接口获 ...

  2. System.NotSupportedException:“无法显式设置 SplitterPanel 的高度。改在 SplitContainer 上设置 SplitterDistance。”

    System.NotSupportedException:"无法显式设置 SplitterPanel 的高度.改在 SplitContainer 上设置 SplitterDistance.& ...

  3. 爆破字典:linux 敏感文件-01

    linux 中敏感文件 1.0 /apache/apache/conf/httpd.conf /apache/apache2/conf/httpd.conf /apache/php/php.ini / ...

  4. SUM-ACM,3月24-3-31周报

    两场天梯赛和一场atcoder. 主要错误知识点在于字符串的处理和并查集的掌握不够,不懂灵活运用. 第一场pta天梯赛 7-5 6翻了 一道字符串的题,我只拿了14分.我不熟悉一个点,f(i,0,s. ...

  5. Odoo 通过Javascript调用模型中自定义方法

    实践环境 Odoo 14.0-20221212 (Community Edition) 代码实现 在js脚本函数中调用模型中自定义方法: this._rpc({ model: 'demo.wizard ...

  6. 题解:P10733 [NOISG2019 Prelim] Lost Array

    题解:P10733 [NOISG2019 Prelim] Lost Array 思路 对于任意 \(\min(X_{A_{i}},X_{B_{i}})=C_{i}\). 只要让 \(X_{A_{i}} ...

  7. golang 学习笔记1

    1.go的gin框架,没有预设目录,具体目录可以在网上参考.

  8. mybatis:映射方式与SQL注入

    1.映射方式有两种,一种是resultType 这个是有一个实体类其成员与数据库中表字段一一对应,下例中就是User类对应了user表 <mapper namespace="com.e ...

  9. Maven创建Web项目(idea)

    web项目创建 Web项目开发需要导入许多的第三方jar包,用Maven创建web项目就可以将这一操作免去. 本项目是在idea下创建的,idea自带Maven,如果还未了解Maven的同学可以看上一 ...

  10. 【Java】Spring注入静态Bean的几种写法

    单例模式在Spring注解上的一种拓展用法 写法一,先配置自身Bean,作为静态成员,然后目标Bean作为自身Bean的实例成员' Spring初始化自身Bean时自动装配数据源Bean,从而附属到静 ...