`

CSS学习笔记----选择器与字体(字系)

 
阅读更多

部分来自456bereastreet

an overview of the syntax for all CSS 2.1 selectors (based on the table inCSS 2.1, 5.1 Pattern matching):

Overview of CSS 2.1 selector syntax Selector type Pattern Description
Universal * Matches any element.
Type E Matches any E element.
Class .info Matches any element whoseclassattribute contains the valueinfo.
ID #footer Matches any element with anidequal tofooter.
Descendant E F Matches any F element that is a descendant of an E element.
Child E > F Matches any F element that is a child of an E element.
Adjacent E + F Matches any F element immediately preceded by a sibling element E.
Attribute E[att] Matches any E element that has anattattribute, regardless of its value.
Attribute E[att=val] Matches any E element whoseattattribute value is exactly equal toval.
Attribute E[att~=val] Matches any E element whoseattattribute value is a list of space-separated values, one of which is exactly equal toval.
Attribute E[att|=val] Matches any E element whoseattattribute has a hyphen-separated list of values beginning withval.
The :first-child pseudo-class E:first-child Matches element E when E is the first child of its parent.
The link pseudo-classes E:link
E:visited
Matches not yet visited (:link) or already visited (:visited) links.
The dynamic pseudo-classes E:active
E:hover
E:focus
Matches E during certain user actions.
The :language pseudo-class E:lang(c) Matches elements of type E that are in language c.
The :first-line pseudo-element E:first-line Matches the contents of the first formatted line of element E.
The :first-letter pseudo-element E:first-letter Matches the first letter of element E.
The :before and :after pseudo-elements E:before
E:after
Used to insert generated content before or after an element’s content.

I’ll explain each of these selector types in more detail in this two part article, so keep reading. A few terms used in that table and in the rest of this article may need some clarification:

descendant
An element that is the child, grandchild or later descendant of an element in the document tree.
ancestor
An element that is the parent, grandparent or earlier ancestor of an element in the document tree.
child
The direct descendant of an element. No other elements may come between the two in the document tree.
parent
The direct ancestor of an element. No other element may come between the two in the document tree.
sibling

An element that has the same parent as the current element.


元素也可以基于它们的类而被选择:

td.fancy {
	color: #f60;
	background: #666;
	}

在上面的例子中,类名为 fancy 的表格单元将是带有灰色背景的橙色。


You can assign multiple class names to an element – theclassattribute can hold a space separated list of class names. Class selectors can then be used to target only elements which have several class names. This rule will matchpelements which haveboth “info” and “error” in their list of class names:

  1. p.info.error { color:#900; font-weight:bold; }

Multiple attribute selectors can be used in the same selector. This makes it possible to match against several different attributes for the same element. The following rule would apply to allblockquoteelements that have aclassattribute whose value is exactly “quote”, and aciteattribute (regardless of its value):

  1. blockquote[class=quote][cite] { color:#f00; }

An element may match several pseudo-classes at the same time. An element could have focus and be hovered over, for instance:

  1. input[type=button]:focus {
  2. color:#000;
  3. background:#ffe;
  4. }
  5. input[type=text]:focus:hover {
  6. background:#fff;
  7. }

The first rule will match single lineinputelements that have focus, and the second rule will match the same elements when they are also hovered over.

属性选择器在为不带有 class 或 id 的表单设置样式时特别有用:



Each of the selectors that form a descendant selector can be a simple selector of any form. The selector in the following rule matches allpelements with a class name ofinfothat are contained by anlielement that is contained by adivelement with the idmyid.

  1. div#myid li p.info { color:#f00; }


The mistake many make is to not list the full selectors. Assume that you have the following markup:

  1. <div id="news">
  2. <h3>News</h3>
  3. <ul>
  4. <li>Item 1</li>
  5. <li>Item 2</li>
  6. </ul>
  7. </div>

Now, say you want to apply the same amount of margin to level 3 headings and unordered lists, but only if they are in thedivelement whoseidis “news”. Here is thewrongway:

  1. div#news h3, ul {
  2. margin:0 2em;
  3. }

Thiswillaffect bothh3andulelements indiv#news. The problem is that it will targetallulelements in the document, not only those indiv#news.

Here is thecorrectway of grouping the selectors in this case:

  1. div#news h3,
  2. div#news ul {
  3. margin:0 2em;
  4. }

So, when grouping selectors, remember to fully specify each selector.


关于!important

#box {
<wbr><wbr><wbr><wbr>color:red !important;<br><wbr><wbr><wbr><wbr>color:blue;<br><wbr>}</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

HTML

<div id="Box"> 在不同的浏览器下,这行字的色应该不同!</div>

这个例子应该是大家经常见到的important的用法了,在IE6环境下,这行字是蓝色,在IE7及firefox下,为红色。这是因为IE6不认important(即不认 !importmant 但是还是认!important前面的color:red),并且color:blue放在color:red的后面(后面的css定义覆盖了前面的color:red),所以在IE6下字为蓝色;而在IE7及firefox下important级别优先,所以color:red !important;和color:blue;的前后顺序没有关系,在IE7及firefox下red跟blue谁先谁后都没有关系。


我们所认为的“字体”可能有许多字体变形组成,分别用来描述粗体、斜体文本,等等。例如,你可能已经对字体 Times 很熟悉。不过,Times 实际上是多种变形的一个组合,包括 TimesRegular、TimesBold、TimesItalic、TimesOblique、TimesBoldItalic、TimesBoldOblique,等等。Times 的每种变形都是一个具体的字体风格(font face),而我们通常认为的 Times 是所有这些变形字体的一个组合。换句话说,Times 实际上是一个字体系列(font family),而不只是单个的字体,尽管我们大多数人都认为字体就是某一种字体。

除了各种特定字体系列外(如 Times、Verdana、Helvetica 或 Arial),CSS 还定义了 5 种通用字体系列:

Serif 字体
这些字体成比例,而且有上下短线。如果字体中的所有字符根据其不同大小有不同的宽度,则该字符是成比例的。例如,小写 i 和小写 m 的宽度就不同。上下短线是每个字符笔划末端的装饰,比如大写 l 顶部和底部的短线,或大写 A 两条腿底部的短线。Serif 字体的例子包括 Times、Georgia 和 New Century Schoolbook。
Sans-serif 字体
这些字体是成比例的,而且没有上下短线。Sans-serif 字体的例子包括 Helvetica、Geneva、Verdana、Arial 或 Univers。
Monospace 字体
Monospace 字体并不是成比例的。它们通常用于模拟打字机打出的文本、老式点阵打印机的输出,甚至更老式的视频显示终端。采用这些字体,每个字符的宽度都必须完全相同,所以小写的 i 和小写的 m 有相同的宽度。这些字体可能有上下短线,也可能没有。如果一个字体的字符宽度完全相同,则归类为 Monospace 字体,而不论是否有上下短线。Monospace 字体的例子包括 Courier、Courier New 和 Andale Mono。
Cursive 字体
这些字体试图模仿人的手写体。通常,它们主要由曲线和 Serif 字体中没有的笔划装饰组成。例如,大写 A 再其左腿底部可能有一个小弯,或者完全由花体部分和小的弯曲部分组成。Cursive 字体的例子包括 Zapf Chancery、Author 和 Comic Sans。
Fantasy 字体

这些字体无法用任何特征来定义,只有一点是确定的,那就是我们无法很容易地将其规划到任何一种其他的字体系列当中。这样的字体包括 Western、Woodblock 和 Klingon。


看了这些,终于知道Chrome的字体设置里面那么多选项是什么意思了,哈哈!


分享到:
评论

相关推荐

    CSS学习笔记-适合初学者

    【CSS学习笔记-适合初学者】 CSS,全称Cascading Style Sheets,即层叠样式表,是网页设计中用于控制页面布局和样式的语言。它与HTML或XML(包括SVG、XHTML等)等标记语言配合使用,使得网页内容表现更加丰富、美观...

    前端学习笔记-黑马程序员CSS

    前端学习笔记-黑马程序员CSS CSS 是一种标记语言,主要用于美化页面,美化 HTML,让画面更美观。总结来说,HTML 主要做结构,显示元素内容,而 CSS 负责美化,让结构(HTML)与样式(CSS)相分离。 一、CSS 语法...

    学习CSS过程中对于基础选择器、文本属性、字体属性的一些学习笔记和理解

    CSS学习日记中,对基础选择器、文本属性、字体属性的一些学习笔记和理解。学习HTML网页知识的可以参考一下。 CSS基础选择器 根据不同需求把不同的标签选出来,简单来说就是选择标签用的。 1. 标签选择器:标签里面...

    html和css学习笔记

    ### HTML与CSS学习笔记 #### 一、基础知识概述 HTML(HyperText Markup Language)与CSS(Cascading Style Sheets)是构建网页的基础技术。通过学习HTML与CSS,我们可以创建结构化且美观的网页。 - **WWW (World ...

    个人css学习笔记 精华版

    个人css学习笔记 精华版 CSS学习笔记中涵盖了CSS的基本概念、分类、基本语法、常用属性等知识点。下面将对这些知识点进行详细的解释和总结。 什么是CSS? CSS(Cascading Style Sheet)是一种样式表语言,用于...

    CSS学习笔记~~~~

    在`CSS学习笔记-01.md`、`CSS学习笔记-02.md`和`CSS学习笔记-03.md`中,可能会深入讲解这些概念,包括更多选择器用法、布局技巧、CSS3特效和预处理器的使用,帮助读者逐步掌握这个强大的样式语言。

    css-html-jsp-xml学习笔记

    2. 属性与值:选择器后接花括号内的属性和值,如`color:red;`设置文本颜色为红色,`font-size:16px;`设置字体大小为16像素。 3. 层叠规则:CSS的“层叠”特性意味着多个样式可以应用于同一元素,浏览器会根据优先级...

    级联样式表CSS学习笔记

    ### 级联样式表CSS学习笔记 #### 一、设置CSS的几种方式 在网页设计与开发过程中,级联样式表(Cascading Style Sheets,简称CSS)是一种用来描述HTML文档外观和格式的语言。CSS提供了多种应用方式,以便开发者...

    CSS学习笔记

    ### CSS 学习笔记 #### 一、CSS 概述 **CSS (Cascading Style Sheets)** 是一种用于控制网页布局样式的语言。它能够帮助我们美化 HTML 页面,使其不仅功能强大而且外观美观。 - **目标与作用:** - CSS 的主要...

    css入门学习笔记1 基础选择器

    本篇将详细讲解四种基础选择器:标签选择器、类选择器、ID选择器和通配符选择器。 1. 标签选择器: 标签选择器允许你为页面中的特定HTML标签指定统一的样式。例如,`Div {Color: green; Font-size: 10px;}` 将给...

    HTML_CSS学习笔记.docx

    8. CSS3 选择器: - 更强大的选择器,如类选择器、ID 选择器、属性选择器等,使样式应用更加精准。 9. CSS3 继承、优先级与重要性: - 继承:子元素会继承父元素的一些样式属性。 - 优先级:计算权重决定哪个...

    《韩顺平轻松搞定网页设计》DIV+CSS学习笔记

    - **基本语法**:CSS的基本语法由选择器和声明块组成。选择器用来指定要应用样式的HTML元素,而声明块包含了具体的样式规则。例如: ```css div { color: red; font-size: 16px; } ``` 这段代码表示所有`...

    CSS样式学习笔记之一:基础知识

    这篇学习笔记将引导我们深入了解CSS的基本概念、选择器、盒模型、布局方式以及样式优先级等核心知识点。 首先,我们从CSS的基本概念开始。CSS是一种样式语言,用于描述HTML或XML(包括如SVG、MathML等各种XML方言)...

    云知梦 css3 学习笔记

    ### CSS3学习笔记知识点梳理 #### CSS样式表的嵌套方式 1. **外部CSS样式表**:将CSS代码写在一个或多个外部文件中,通过`&lt;link&gt;`标签引入HTML文档。这种方式便于维护和复用,是推荐的方式。 2. **内部CSS样式表**...

    CSS基础与提高的笔记

    - CSS不断发展,引入了更多的特性和功能,如CSS3增加了新的选择器、布局方法等。 综上所述,CSS作为一种强大的样式语言,不仅能够帮助开发者美化网页,还能够提高开发效率,增强用户体验。通过深入学习CSS的各种...

    css学习笔记

    《Css 学习笔记》是一份...以上只是CSS学习笔记中的一部分内容,实际上CSS还涉及到布局(如Flexbox和Grid)、响应式设计、动画、过渡等方面。通过不断实践和探索,可以掌握更多高级技巧,创建出美观且功能丰富的网页。

    div css学习笔记

    以上内容总结了DIV CSS学习笔记中的关键知识点,包括文档类型声明、CSS选择器、CSS引入方式、布局模型以及背景与边框设置。这些知识对于前端开发者来说至关重要,能够帮助他们创建结构良好、样式丰富的网页。

    CSS笔记 - 培训那会记录的(详解)

    ### CSS层叠样式表概述 CSS(Cascading Style Sheets),即层叠样式表,是一种用来定义HTML文档中元素外观的样式...熟练掌握CSS选择器的使用对于前端开发者来说至关重要,它能够帮助开发者高效地控制和美化网页内容。

Global site tag (gtag.js) - Google Analytics