整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

css3新手入门(1)基础选择器

css3新手入门(1)基础选择器

天学习下css3的基础选择器类型,只有使用选择器选中了元素,才可把样式应用于元素上,所以选择器对我们来说是至关重要的。选择器允许开发者根据元素的类型、类名、ID等属性来选择性地应用样式。

下面是一个包含HTML和CSS代码的例子,展示了CSS3中的几种基础选择器如何工作

<!DOCTYPE html>  
<html lang="en">  
<head>  
<meta charset="UTF-8">  
<meta name="viewport" content="width=device-width, initial-scale=1.0">  
<title>CSS3 基础选择器示例</title>  
<style>  
    /* 元素选择器 */  
    p {  
        color: blue;  
    }  
  
    /* 类选择器 */  
    .highlight {  
        background-color: yellow;  
    }  
  
    /* ID选择器 */  
    #unique-id {  
        color: red;  
    }  
  
    /* 后代选择器 */  
    div p {  
        font-style: italic;  
    }  
  
    /* 子选择器 */  
    ul > li {  
        list-style-type: none;  
    }  
  
    /* 相邻兄弟选择器 */  
    h1 + p {  
        font-size: 18px;  
    }  
  
    /* 通用兄弟选择器 */  
    h1 ~ p {  
        margin-top: 20px;  
    }  
</style>  
</head>  
<body>  
  
<p>这是一个普通的段落,应用了元素选择器。</p>  
  
<p class="highlight">这是一个高亮显示的段落,应用了类选择器。</p>  
  
<div id="unique-id">这是一个ID为unique-id的div,它的文本应用了ID选择器。</div>  
  
<div>  
    <p>这个段落位于div内部,应用了后代选择器。</p>  
</div>  
  
<ul>  
    <li>列表项1,应用了子选择器。</li>  
    <li>列表项2,也应用了子选择器。</li>  
</ul>  
  
<h1>标题</h1>  
<p>这个段落紧接在h1之后,应用了相邻兄弟选择器。</p>  
<p>这个段落也在h1之后,但由于不是紧接的,所以只应用了通用兄弟选择器的样式。</p>  
  
</body>  
</html>

在这个例子中,我们有一个HTML文档,其中包含了各种元素,并且针对这些元素使用了CSS3中的基础选择器来应用样式。

  • 元素选择器:所有的<p>元素都会应用蓝色文本颜色。
  • 类选择器:具有class="highlight"的<p>元素会有黄色背景。
  • ID选择器:ID为unique-id的<div>元素内的文本会变成红色。
  • 后代选择器:位于<div>内部的<p>元素会以斜体显示。
  • 子选择器:<ul>元素的直接子<li>元素将不会有列表样式(即无圆点或数字)。
  • 相邻兄弟选择器:紧接在<h1>之后的<p>元素会有18px的字体大小。
  • 通用兄弟选择器:所有在<h1>之后的<p>元素都会有20px的顶部外边距,但由于相邻兄弟选择器更具体,紧接在<h1>之后的<p>还会受到它的影响(这里两个选择器都作用于相同的元素,但样式会累加或根据CSS的层叠规则来应用)。不过,在这个特定的例子中,字体大小只由相邻兄弟选择器设置,顶部外边距则由通用兄弟选择器设置。

CSS 中,descendant selectors(子选择器)是一种强大的选择器类型,允许你选择包含某个特定元素的子元素,以及这些子元素的子元素,依此类推。使用子选择器,你可以创造复杂的样式并非常清晰地定义你想要为哪些元素应用样式。在这篇文章中,我们将深入探讨子选择器的优势和巧妙应用方法。


优势:

  1. 精确选择:子选择器可以帮助你很好地控制哪些元素应该应用样式,因为它们只选择包含特定元素的子元素。
  2. 更复杂的样式:子选择器能够创建更复杂的样式,因为它们可以直接访问嵌套的元素。
  3. 与其他选择器结合:子选择器可以与其他 CSS 选择器(如类选择器、ID 选择器和属性选择器)结合,为你的网站或应用程序提供更详细的选择和stenza 之间的样式结构。

巧妙用法:

  1. 通过嵌套基本选择器来减少重复的代码:通过将子选择器嵌套在另一个选择器中,你可以用更少的代码来选择更复杂的元素,从而优化你的 CSS 代码。
  2. 创建条件样式:子选择器可以用来创建条件样式,如特定的列表项或表格单元格,从而为页面提供更多的可定制性。
  3. 创建建 Juliü模式:子选择器可以用来创建建 Juliü模式,例如用于 create nested lists,或用于 margining child elements inside parent elements.

掌握子选择器编写 CSS 时的关键点包括:

  1. 对深度理解:子选择器可能会导致深度问题,所以你需要一个清晰的理解你的 HTML 结构。
  2. 避免累积同级选择:子选择器可能会导致同级选择问题,这可能会导致样式扩展到你不希望它们 extends。
  3. 扩展性和维护性:为了保持 CSS 的扩展性和维护性,请使用 class selectors 来避免大量的占位符选择器。

安电子科技大学出版社。

在CSS中可以有各种各样的选择符,比如可以看到在文本中设定了有类的选择符,比如像是body就是一个类,它的作为类的选择符要求颜色为red、h1,这也是类,h2、h3这些都是类,而p当然是类,但是ex是子类,相当于这就是一个子类的选择符。

同样的在段落的元素下有多种子类,有用YouYuan的KaiTi的多种子类,这种多种子类的选择符就规定了不同的样式,包括span规定了一个子类叫做highlight,它就是一个子类的选择符,要求背景颜色是要黄色,下面就会去用到这些比如类的选择符,包括h1到h4也会用到子类的选择符。

比如同样都是段落p,但是如果class等于ex或者class等于YouYuan KaiTi或者是对于Spen这种类型,它的子类是highlight,就会以不同的形式来呈现。

来看一下显示效果,在显示效果中可以看到h1被规定了颜色是绿色,h2会规定了中间是有删除符号的,就是文本的装饰是有一条线贯穿这样一个方式。h4以什么样的方式来呈现?比如以字符间距为20个px的方式来呈现。

其它的地方,比如像是普通的段落就会在body里边去获得默认的颜色是红色,而这个特殊的段落,因为用了class,等于ex,也就说属于这个段落的子类。它所呈现的颜色作为RGB就是蓝色,它以蓝色的方式来呈现。其它的像刚才看到的YouYuan KaiTi,就是由于它们采用了不同的子类所呈现的。

而这个地方span定义了一个加亮,它的背景颜色是黄色,它就加亮了这部分的背景颜色,在span的里边加亮了背景颜色。这些都是选择符,CSS的选择符的呈现。

接下来看还有一类的选择符,实际上是属于这种伪类,这种伪类的选择器,伪类其实主要是用在超链接上。直接来看显示效果,这个其实也是经常看到的一种显示效果,就是当鼠标移上去的时候,超链接会有一些反应。当鼠标点击过后,其实不管它有没有这个页面,点击过后,超链接的方式就会变化,它是被点击过后的这种方式,而这些都可以被定义。

鼠标过去的时候,鼠标点击的时候,包括这有输入框,输入框放上去的时候,希望它呈现黄色,但是注意不是输入框的颜色是黄色,而是它的特殊的某一个状态,把它的颜色呈现黄色,这样的一些东西都可以以伪类的方式来呈现。

来看源代码,源代码这个地方可以看到,它实际上并没有规定它的<a>应该怎么呈现,它只是说明了它的cass等于one,class等于two,所以这两个超链接会呈现不同的样式。

而它的class其实在哪儿定义的?当然是在CSS里边定义,但是CSS跟刚才的CSS不太一样的地方在于,刚才的CSS是放到了<style>这样一个标签里边的,而CSS是放到了link>里边,把它作为一个CSS文件链接进来的。

来看一下,它链接进来的这个文件在哪儿?在当前的路径下的CSS子目录下的这个文件,也就是当前路径下CSS子目录下的这个文件。

打开看,实际上它就规定了可以看到这个<a这种标签,如果它的子类是one的这种情况就是子类如果是one这种情况,它的几个不同的呈现方式,就是它的几个状态。link的时候应该是以什么样的颜色呈现?visited以后应该是以什么样的方式呈现?这个hover就相对于鼠标移上去的时候,当它的是热点的时候以什么样的方式呈现?同样的two。

·第二个类也是这样的,它也规定了input的伪类就是focus,就是当它成为焦点的时候,它希望它的背景颜色是黄色,最终就达到了展示效果,包括背景颜色变成黄色的这种展示效果,这些就是伪类。