CSS – W3Schools 学习笔记 (2)
CSS Combinators
CSS Pseudo-classes
p:first-child = p element 同时它是某个 element 的 first child
CSS Pseudo-elements
伪元素用双分号 ::
比较常看到的使用场景, 第一个字特别大
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
以前常用于把多个 icon 放到 1 个 image 里.
通过 background-image + position 调出图片然后显示某个区域而已

CSS Attribute Selectors
[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
input + icon

用 background-image + padding 来做的

去掉 textarea resize

{ resize: none; }
CSS Counters
可以用 CSS 来做 index

CSS 长这样

CSS Units
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
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)的更多相关文章
- css居中学习笔记
css居中学习笔记 一.水平居中 以下面的代码为例: <body> <div class="parent"> <div class="chi ...
- CSS 3 学习笔记
css 3 学习笔记 文本: word-wrap : normal | break-word取值:normal: 控制连续文本换行.break-word: 内容将在边界内换行.如果需要,词 ...
- (2)《Head First HTML与CSS》学习笔记---img与基于标准的HTML5
1.浏览器处理图像的过程: 1.服务器获取文件,显示出文本结构,以及预留默认的大小给<img>(如果该<img>有width-1值和height-1值,则根据这个值提前设好页面 ...
- CSS入门学习笔记
CSS入门学习笔记一.CSS简介1.什么是CSS?2.为什么使用CSS?3.CSS的作用二.CSS语法1.CSS基础语法2.CSS注释语法3.CSS应用方法三.CSS选择器1.元素选择器2.类选择器3 ...
- 【干货】Html与CSS入门学习笔记1-3
从23号开始用了4天时间看完了<Head First Html与CSS>这本书,本书讲解方式深入浅出,便于理解,结合习题,便于记忆,是一本不错的入门书.下面是本书的学习笔记: 一.认识HT ...
- (6)《Head First HTML与CSS》学习笔记---结尾、《HTML5权威指南》读书笔记
1.内联元素的外边距.内边距与块元素稍有不同. 如果一个内联元素四周都增加外边距,只能看到左边和右边会增加空间:你也可以对内联元素的上下增加内边距,不过这个内边距不会影响包围它的其他内联元素的间距—— ...
- HTML&CSS基础学习笔记1.16-单元格间距和表格主体
上一篇讲html学习笔记,讲过了合并单元格,那么今天就来介绍下如何控制单元格的间距,以及表格主体的相关知识. 单元格间距 在上个知识点的显示结果中你可能发现了,单元格与单元格之间有一小段空白.这是由& ...
- HTML&CSS基础学习笔记—创建列表
创建一张表格 很多时候我们需要在网页上展示一些数据,使用表格可以很好的来展示数据. 在HTML中<table>标签定义 表格. <table> </table> 添 ...
- HTML&CSS基础学习笔记1.32-选择器是什么
选择器是什么 选择器是CSS样式为了定位页面上的任意元素的一种方法. 选择器主要分为:元素标签选择器.通用选择器.类选择器.ID选择器.属性选择器.组合选择器.伪类选择器.伪元素选择器. 先做个了解, ...
- HTML&CSS基础学习笔记1.31-像素和相对长度
像素和相对长度 之前的笔记中,我们提到过用属性width.height来设置图片的尺寸,它们的单元都是”px(像素)”.长度单位总结一下,目前比较常用到px(像素).em.% 百分比,要注意其实这三种 ...
随机推荐
- js需要同时发起百条接口请求怎么办?--通过Promise实现分批处理接口请求
如何通过 Promise 实现百条接口请求? 实际项目中遇到需要发起上百条Promise接口请求怎么办? 前言 不知你项目中有没有遇到过这样的情况,反正我的实际工作项目中真的遇到了这种玩意,一个接口获 ...
- System.NotSupportedException:“无法显式设置 SplitterPanel 的高度。改在 SplitContainer 上设置 SplitterDistance。”
System.NotSupportedException:"无法显式设置 SplitterPanel 的高度.改在 SplitContainer 上设置 SplitterDistance.& ...
- 爆破字典:linux 敏感文件-01
linux 中敏感文件 1.0 /apache/apache/conf/httpd.conf /apache/apache2/conf/httpd.conf /apache/php/php.ini / ...
- SUM-ACM,3月24-3-31周报
两场天梯赛和一场atcoder. 主要错误知识点在于字符串的处理和并查集的掌握不够,不懂灵活运用. 第一场pta天梯赛 7-5 6翻了 一道字符串的题,我只拿了14分.我不熟悉一个点,f(i,0,s. ...
- Odoo 通过Javascript调用模型中自定义方法
实践环境 Odoo 14.0-20221212 (Community Edition) 代码实现 在js脚本函数中调用模型中自定义方法: this._rpc({ model: 'demo.wizard ...
- 题解:P10733 [NOISG2019 Prelim] Lost Array
题解:P10733 [NOISG2019 Prelim] Lost Array 思路 对于任意 \(\min(X_{A_{i}},X_{B_{i}})=C_{i}\). 只要让 \(X_{A_{i}} ...
- golang 学习笔记1
1.go的gin框架,没有预设目录,具体目录可以在网上参考.
- mybatis:映射方式与SQL注入
1.映射方式有两种,一种是resultType 这个是有一个实体类其成员与数据库中表字段一一对应,下例中就是User类对应了user表 <mapper namespace="com.e ...
- Maven创建Web项目(idea)
web项目创建 Web项目开发需要导入许多的第三方jar包,用Maven创建web项目就可以将这一操作免去. 本项目是在idea下创建的,idea自带Maven,如果还未了解Maven的同学可以看上一 ...
- 【Java】Spring注入静态Bean的几种写法
单例模式在Spring注解上的一种拓展用法 写法一,先配置自身Bean,作为静态成员,然后目标Bean作为自身Bean的实例成员' Spring初始化自身Bean时自动装配数据源Bean,从而附属到静 ...