HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第3章初识CSS

简介: HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第3章初识CSS

本教程案例在线演示


有路网PC端

有路网移动端


免费配套视频教程


免费配套视频教程


教程配套源码资源


教程配套源码资源


考虑对人的描述方式

人 {
   身高:175cm;   
    体重:70kg;   
    肤色:黄色
}

CSS基本语法结构

选择器 {
    声明1;
    声明2;
    }

h1 {
    font-size:12px;
    color:#F00;
}

style标签

<style type="text/css">
h1 {
    font-size:12px;
    color:#F00;
}
</style>

标签选择器

HTML标签作为标签选择器的名称

<h1>…<h6>、<p>、<img/>

p { font-size:16px;}

类选择器

<标签名 class= "类名称">标签内容</标签名>

.类名称 { font-size:16px;}

ID选择器

<标签名 id= "id名称">标签内容</标签名>

#id名称 { font-size:16px;}

标签选择器直接应用于HTML标签

类选择器可在页面中多次使用

ID选择器在同一个页面中只能使用一次


制作《浣溪沙》


使用标签选择器设置标题字体大小为20px

页面中所有段落中的文本字体大小为16px

使用类选择器设置正文和译文内容字体颜色为绿色

使用ID选择器设置译文标题颜色为蓝色


image.png


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>《浣溪沙》</title>
  <style type="text/css">
    h1 {
      font-size: 20px;
    }
    p {
      font-size: 16px;
    }
    .poem {
      color: green;
    }
    #title {
      color: blue;
    }
  </style>
</head>
<body>
  <h1>浣溪沙</h1>
  <hr />
  <p class="poem">一曲新词酒一杯,<br />
    去年天气旧亭台。<br />
    夕阳西下几时回?<br />
    无可奈何花落去,<br />
    似曾相识燕归来。<br />
    小园香径独徘徊。
  </p>
  <p id="title">译文</p>
  <p class="poem">听一支新曲喝一杯美酒,还是去年的天气旧日的亭台,西落的夕阳何时再回来?
    那花儿落去我也无可奈何,那归来的燕子似曾相识,在小园的花径上独自徘徊。</p>
</body>
</html>

CSS复合选择器


后代选择器

交集选择器

并集选择器


后代选择器


在CSS选择器中通过嵌套的方式,对特殊位置的HTML标签进行声明.

外层的标签写在前面,内层的标签写在后面,之间用空格分隔.

标签嵌套时,内层的标签成为外层标签的后代.

h3 strong{color:blue; font-size:36px;}


交集选择器


由两个选择器直接连接构成,选中二者各自元素范围的交集.

第一个必须是标签选择器,第二个必须是类选择器或者ID选择器.

选择器之间不能有空格,必须连续书写

p.txt{color:blue; line-height:28px;}


并集选择器


多个选择器通过逗号连接而成.

利用并集选择器同时声明风格相同样式.

h3,.first,.second,#end{
        font-size:16px; 
        color:green; 
        font-weight:normal;
}


制作《花千骨大结局》


image.png


image

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style type="text/css">
    p strong,
    h1 strong {
      color: red;
    }
  </style>
</head>
<body>
  <h1><strong>花千骨</strong>大结局</h1>
  <p>人间帝王轩辕郎、无所不知所不能东方彧卿(其实他就是超脱六界之外的异朽君)、妖魔两界圣君杀阡陌那时都是爱花千骨的,都希望白子画能够善待花千骨。</p>
  <p>白子画的善待是八十一根消魂钉,普通仙一根消魂钉就死去活来。花千骨受了17根,又被白子画用断念剑看了近百剑,<strong>花千骨心里那个痛苦不言而喻</strong>。而后,花千骨扔到地牢。白子画替她承受了剩下的消魂钉。
    <strong>白子画</strong>
    在霓漫天的告知下,白子画的师兄摩严得知花千骨居然悖逆天理爱上白子画,用绝情水泼到花千骨的喉咙里,脸上,于是花千骨又瞎又哑又毁容,被发配到了几乎不可能走出来的蛮荒之地。</p>
  <strong>花千骨又瞎又哑又毁容</strong>
</body>
</html>


HTML中引入CSS样式

  • 行内样式
  • 内部样式表
  • 外部样式表

行内样式

<h1 style="color:red;">style属性的应用</h1>
<p style="font-size:14px; color:green;">直接在HTML标签中设置的样式</p>

内部样式表

CSS代码写在<head>的<style>标签中

优点

方便在同页面中修改样式

缺点

不利于在多页面间共享复用代码及维护,对内容与样式的分离也不够彻底


外部样式表


CSS代码保存在扩展名为.css的样式表中.

HTML文件引用扩展名为.css的样式表,有两种方式

  • 链接式
  • 导入式
    链接外部样式表

<head>
  ……
<link href="style.css" rel="stylesheet" type="text/css" />
……
</head>

导入外部样式表

<head>
……
<style type="text/css">
<!--
@import url("style.css");
-->
</style>
</head>

CSS继承特性

<!DOCTYPE html>
<html lang="en">
<head>    
<meta charset="UTF-8">    
<title>Title</title>    
<style type="text/css">        
    body{color:red;}    
</style>
</head>
    <body>
        <p>
            父级P
            <strong>子级strong</strong>
            父级P
        </p>
        <ul>    
            <li>子级li1</li>
            <li>子级li2</li>
        </ul>
    </body>
</html>


image.png


子标签可以继承父标签的样式风格

子标签可以覆写父标签的样式,但不会影响父标签的样式风格

<h1>勇气</h1>
<p class="first">三年级时,我还是一个<strong>胆小如鼠</strong>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。
</p>
<p id="second">到了三年级下学期时,我们班上了一节公开课,老师提出了一个很<strong>简单</strong>的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。
</p>

p{color:red;} 
.first strong{color: blue}


image.png


CSS的优先级


ID选择器>类选择器>标签选择器

<!DOCTYPE html>
<html lang="en">
<head>    
<meta charset="UTF-8">    
<title>Title</title>    
<style type="text/css">        
p{color:red;}        
.first{color:green;}    
</style>
</head>
<body>
<p class="first" id="pid">三年级时,我还是一个<strong>胆小如鼠</strong>的小女孩。</p></body>
</html>

p和.first都匹配到了p这个标签上,green是正确的颜色


image.png


在html文件中对于同一个元素可以有多个css样式存在,当有相同权重的样式存在时,会根据这些css样式的前后顺序来决定,处于最后面的css样式会被应用

<!DOCTYPE html>
<html lang="en">
<head>    
<meta charset="UTF-8">
<title>Title</title>
<style type="text/css">
    p{color:red;} 
    p{color:green;}
</style>
</head>
<body>
    <p class="first" id="pid">三年级时,我还是一个<strong>胆小如鼠</strong>的小女孩。</p>
</body>
</html>

内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)。

<!DOCTYPE html>
<html lang="en">
<head>    
<meta charset="UTF-8">    
<title>Title</title>    
<style type="text/css">        
    p{color:red;}        
    p{color:blue;}    
</style>
</head>
<body> 
    <p class="first" id="pid" style="color:green">三年级时,我还是一个<strong>胆小如鼠</strong>的小女孩。</p> 
</body>
</html>

有些特殊的情况需要为某些样式设置具有最高权值,怎么办?这时候我们可以使用!important来解决。

<!DOCTYPE html>
<html lang="en">
<head>    
<meta charset="UTF-8">    
<title>Title</title>    
<style type="text/css">        
    p{color:red!important;}         
    .first{color:blue;}   
</style>
</head>
<body> 
      <p class="first" id="pid" style="color:green">三年级时,我还是一个<strong>胆小如鼠</strong>的小女孩。</p>
</body>
</html>



image.png


目录
相关文章
|
29天前
|
数据采集 存储 前端开发
Puppeteer教程:使用CSS选择器点击和爬取动态数据
本文介绍如何使用Puppeteer结合CSS选择器爬取动态网页数据,以贝壳网的二手房价格为例,通过代理IP提高爬虫成功率。文章详细讲解了Puppeteer的安装和配置、代码实现及数据趋势分析,帮助读者掌握动态网页爬取技术。
Puppeteer教程:使用CSS选择器点击和爬取动态数据
|
11天前
|
缓存 监控 前端开发
探索前端性能优化:关键策略与代码实例
本文深入探讨前端性能优化的关键策略,结合实际代码示例,帮助开发者提升网页加载速度和用户体验,涵盖资源压缩、懒加载、缓存机制等技术。
|
1月前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
102 6
WK
|
3月前
|
存储 移动开发 前端开发
HTML5和CSS5有什么区别
HTML5和CSS5在网页设计中扮演不同角色。HTML5是超文本标记语言的第五版,通过新特性如实时更新、跨平台运行及更好的安全性等,定义网页内容和结构。尽管常说CSS5,实际最新的CSS版本包含多个模块如CSS Grid和Flexbox,主要用于控制网页布局和样式,提供强大的选择器、动画支持和响应式设计,与HTML5相辅相成,共同构建现代网页的基础架构。
WK
57 3
|
4月前
|
Java 数据安全/隐私保护 安全
掌握Struts 2动态方法调用,让你的Web开发如虎添翼,轻松应对复杂业务需求!
【8月更文挑战第31天】在Web应用开发中,Struts 2框架因强大功能和灵活性而广受青睐。其动态方法调用(DMI)特性允许在不修改配置文件的情况下动态调用Action类中的方法,相比传统方法调用(需在`struts.xml`中为每个方法创建单独的`&lt;action&gt;`),DMI简化了配置并提升了灵活性、可维护性和扩展性。本文通过对比DMI与传统方法调用,展示如何利用DMI简化开发流程,并强调了在使用DMI时需注意的安全性和访问控制问题。
51 0