摘要


01.CSS(层叠样式表)的三种设置方法

  • CSS又名层叠样式表,它的作用就是给HTML网页进一步装饰,前面我们学习HTML结构的时候其实就是学习了HTML的一个大的骨架结构,后面学习的表form表单展现的形式是很low的,需要进一步对齐修饰设置,让它变得更高大上起来,这就离不开CSS的知识。

    • 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。
    • CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。
  • 语法结构:选择器 {属性: 属性值;属性: 属性值}
  • 注释形式:/*这是注释内容*/
                     /*多行注释内容1
                       多行注释内容2
                    */
  • 三种设置方法:
      • head里面style中写css:<style>p {color: red}</style>
      • head里面link引入css文件:<link rel="stylesheet" href="my_scc_02.css">
      • 在标签内直接指定style:<p style="color: red">hello world!</p>

我们在设置不同种类标签内容的样式的时候,需要知道我们修改的标签的位置,接下来看看如何精确定位设置样式的位置,才能设置其样式。

02.基本选择器

标签通常同的属性有:id和class类

  • 标签选择器:根据标签种类来设置该类标签样式
  • id选择器:每个标签都可以设置一个id在唯一标识它,所以我们可以通过这个id来定位到该标签位置,从而进行修改样式操作,id前面注意要加上#
  • 类选择器:在标签里面设置class="c1",c1是一个类的设置样式,在style里定义的时候前面需要加点(.c1 {color:red})
  • 通用选择器:类似这种* {color: blue},*代表所有标签,意思就是所有都全部设置
    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>CSS学习测试</title>
    6. <style>
    7. p {color: gold}
    8. .c1 {color: mediumturquoise}
    9. #p1 {color: blue}
    10. * {color: red}
    11. </style>
    12. </head>
    13. <body>
    14. <p>我要记住你的样子</p>
    15. <div>像鱼记住水的拥抱</div>
    16. <span>像云在天空中停靠</span>
    17. <h3 class="c1">夜晚的来到</h3>
    18. <p id="p1">也不会忘了阳光的温暖</p>
      </body>
      (涉及查找优先级的问题,在后面会谈及。)


03.组合选择器(span套span,不符合html5规则)

  • 后代选择器==>div  span:div里面所有的span

    1. <div>
    2. 01我要忘了你的样子
    3. <br>
    4. <span>
    5. 02像鱼忘了海的味道
    6. <br>
    7. <span>
    8. 03放下所有梦和烦恼
    9. </span>
    10. </span>
    11. </div>

  • 儿子选择器==>div>span:div里面儿子一层(第一层)所有的span
    1. <style>
    2. div>span {color: deeppink}
    3. </style>
    4.  
    5. <div>主div
    6. <div>主div的儿子1
    7. <span>主div的孙子1</span>
    8. </div>
    9. <p>主div的儿子2
    10. <span>主div的孙子2</span>
    11. </p>
    12. </div>

  • 毗邻选择器==>div+span:div下面挨着的span
    1. <style>
    2. div+span {color: deeppink}
    3. </style>
    4.  
    5. <div>主div
    6. <p>主div的儿子2
    7. <span>主div的孙子2</span>
    8. </p>
    9. </div>
    10. <span>div下面的第一个span</span>
    11. <span>div下面的第二个span</span>

  • 弟弟选择器==>div~span:与div同一级且下面所有的标签
    1. <style>
    2. div~span {color: deeppink}
    3. </style>
    4.  
    5. <div>主div
    6. <p>主div的儿子2
    7. <span>主div的孙子2</span>
    8. </p>
    9. </div>
    10. <span>div下面的第一个span</span>
    11. <span>div下面的第二个span</span>


04.属性选择器

  • 在标签内自定义一个属性,用于找到该标签的作用。

    1. <style>
    2. [xxx] {color: deeppink}
    3. </style>
    4.  
    5. <p xxx>自定义属性xxx</p>
    6. <p xxx="1">自定义属性+值1</p>
    7. <p xxx="2">自定义属性+值2</p>
    8. <p id="xxx">我是打酱油的!</p>

    1. <style>
    2. [xxx='1'] {color: deeppink}
    3. </style>
    4.  
    5. <p xxx>自定义属性xxx</p>
    6. <p xxx="1">自定义属性+值1</p>
    7. <p xxx="2">自定义属性+值2</p>
    8. <p id="xxx">我是打酱油的!</p>

    1. <style>
    2. [xxx='2'] {color: deeppink}
    3. </style>
    4.  
    5. <span xxx="2">我是span,我的属性里有xxx</span>
    6. <p xxx>自定义属性xxx</p>
    7. <p xxx="1">自定义属性+值1</p>
    8. <p xxx="2">自定义属性+值2</p>
    9. <p id="xxx">我是打酱油的!</p>


05.分组与嵌套

  • 分组:

    1. <style>
    2. div,p,span {color: red}
    3. </style>
    4.  
    5. <div>我是div</div>
    6. <p>我是一个p</p>
    7. <span>我是span</span>

  • 嵌套:
    1. <style>
    2. div p,span {color: red}
    3. </style>
    4.  
    5. <div>我是div
    6. <p>我是div里面的一个p</p>
    7. <span>我是div里面的span</span>
    8. </div>
    9. <p>我是一个p</p>
    10. <span>我是span</span>
  • div p嵌套关系,然后div和span是组合关系,所以:


06.伪类选择器

  • a标签的四种状态:

    1. <style>
    2. a {text-decoration: none} /*去掉下划线*/
    3. a:link {color: green} /*链接什么都不干的时候颜色*/
    4. a:hover {color: red} /*鼠标放在链接上面不做任何动作时候变的颜色*/
    5. a:active {color: blue} /*鼠标点击链接时候,链接的颜色*/
    6. a:visited {color: gray} /*当这个链接已经点击过,将变成的颜色*/
    7. </style>
    8.  
    9. <p><a href="#我是下面" id="我是上面">点我跳到下面</a></p>
    10. <p><a href="http://www.t66y.com" target="_blank">点我开启新的人生篇章(爬梯吧)</a></p>
    11. <p><a href="http://www.baidu.com" target="_blank">百度一下</a></p>
    12. <p><a href="#我是上面" id="我是下面">点我跳到上面</a></p>
  • 获取焦点:让输入框在选中时候,背景颜色变成自定义颜色
    1. <style>
    2. input:focus {background-color: yellow}
    3. </style>
    4.  
    5. <form action="">
    6. <label for="a1">用户: <input type="text" id="a1" name="username"></label>
    7. <label for="a2">用户: <input type="password" id="a2" name="password"></label>
    8. <input type="submit">
    9. </form>


07.伪元素选择器

  • 伪元素选择器:将某一标签的第一个,开头、结尾处设置样式。
  • first-letter
    1. <style>
    2. p:first-letter {color: red;
    3. font-size: 24px}
    4. </style>
    5.  
    6. <p>我闻西方大士,</p>
    7. <p>为人了却凡心。</p>
    8. <p>秋来明月照蓬门,</p>
    9. <p>香满禅房幽径。</p>
    10. <p>屈指灵山会后,</p>
    11. <p>居然紫竹成林。</p>
    12. <p>童男童女拜观音,</p>
    13. <p>仆仆何嫌荣顿?</p>

  • before:

    1. <style>
    2. p:before {content: '△';
    3. color: red;
    4. font-size: 24px}
    5. </style>
    6.  
    7. <p>万物由道而生,循着道成长,而后又回归于道。</p>
    8. <p>人可以毁灭,但不可以屈服。</p>
    9. <p>你要克服的是你的虚荣心,是你的炫耀 欲,你要对付的是时时刻刻想出风头的小聪明。</p>

  • after:

    1. <style>
    2. p:after {content: '☆';
    3. color: red;
    4. font-size: 24px}
    5. </style>
    6.  
    7. <p>包租婆,怎么就没有水了呢</p>
    8. <p>维护世界和平就靠你了,我这里有本秘籍,见与你有缘,就十块钱卖给你了.</p>


08.选择器的优先级

  •  相同选择器,不同的引入方式:就近原则(从上往下生效),看哪个style里标签更近。
  •  不同选择器,不同引入方式:行内样式>id选择器>类选择器>标签选择器

09.一些样式的设置(字体、文本、背景、边框)

  • 块儿级标签的宽度和长度:

    1. <style>
    2. div {width: 800px; height: 100px;background-color: mediumspringgreen}
    3. </style>
    4.  
    5. <div>樊登读书,改变你我</div>

  • 字体相关设置(大小、自重、颜色):
    1. <style>
    2. p {font-size: 24px;
    3. font-weight: lighter;
    4. color: #FF6700;
    5. /*color: rgb(0,0,255);*/
    6. /*color: rgba(0,0,255,0.2)} 最后的0.2是透明度(0-1之间)*/
    7. </style>
    8.  
    9. <p>面朝大海,春暖花开</p>

  • 文本属性:(通常给a标签用)

    1. <style>
    2. p {text-align: center;
    3. text-decoration: line-through}
    4. </style>
    5.  
    6. <p>浪花一朵朵</p>
    7. <p>桃花朵朵开</p>
  •   
  • 去掉跳转文字的下划线:
    1. <style>
    2. a {text-decoration: none}
    3. </style>
    4.  
    5. <a href="http://www.baidu.com">百度一下</a>
    6. <a href="http://www.google.com">谷歌一下</a>

  • 背景属性:
    1. <style>
    2. .c1 {
    3. height: 200px;
    4. background: url("20190529[21-04].png") blue no-repeat center;
    5. }
    6.  
    7. .c2 {height: 200px;background-color: tomato}
    8. .c3 {height: 200px;background-color: yellow}
    9. .c4 {height: 200px;background-color: greenyellow}
    10.  
    11. </style>
    12. </head>
    13. <body>
    14. <div class="c1"></div>
    15. <div class="c2"></div>
    16. <div class="c3"></div>
    17. <div class="c4"></div>

  • 边框:
    1. <style>
    2. div {border: 1px dashed red}
    3. </style>
    4.  
    5. <div>我是一条鱼</div>

  • 画圆:

    1. <style>
    2. div {
    3. width: 400px;
    4. height: 400px;
    5. background-color: red;
    6. border: 2px dashed black;
    7. border-radius: 50%;
    8. }
    9. </style>
    10.  
    11. <div></div>


10.display属性设置(设置不显示,不会继续占用位置)

  • display:none

    1. <style>
    2. [xxx] {display: none} /*设为none代表含xxx属性标签的内容都不显示,且不再占用原位置
    3. </style>
    4.  
    5. <div>开头1</div>
    6. <div xxx>看我显示没有1</div>
    7. <div xxx>看我显示没有1</div>
    8. <div>结尾2</div>

  • display:inline    将块级标签变成行内标签
    1. <style>
    2. div {
    3. height: 300px;
    4. width: 200px;
    5. background-color: aquamarine;
    6. display: inline;
    7. }
    8. </style>
    9.  
    10. <div>天天</div>
    11. <div>年年</div>

  • display:block    将行内标签变成块级标签
    1. <style>
    2. span {display: block}
    3. </style>
    4.  
    5. <span>美好的事情</span>
    6. <span>即将到来</span>

  • display :inline-block  让span标签具有独占一行且可以设置长宽

    1. <style>
    2. span {
    3. width: 120px;
    4. height: 400px;
    5. background-color: bisque;
    6. border: 2px solid red;
    7. display: inline-block;
    8. }
    9. </style>
    10.  
    11. <span>第一个span</span>
    12. <span>第二个span</span>

前端基础之CSS_1的更多相关文章

  1. web前端基础知识及快速入门指南

    web前端基础知识及快速入门指南 做前端开发有几个月了,虽然说是几个月,但是中间断断续续的上课.考试以及其它杂七杂八的事情,到现在居然一直感觉自己虽然很多前端的知识很眼熟,却也感觉自己貌似也知识在门口 ...

  2. html css 前端基础 学习方法及经验分享

    前言: 入园第一天,想分享一点儿前端基础html css 的学习方法和一些经验给热爱前端,但是不知道从哪儿开始,依旧有些迷茫的新手朋友们.当然,适合每个人的学习方式不同,以下所讲的仅供参考. 一.关于 ...

  3. HTML+DIV+CSS+JSweb前端基础

    HTML+DIV+CSS+JSweb前端基础 1.<html>和</html> 标签限定了文档的开始和结束点. 属性: (1)  dir: 文本的显示方向,默认是从左向右 (2 ...

  4. 前端基础面试题(JS部分)

    1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined.Null.Boolean.Number.String 值类型:数值.布尔值.null.und ...

  5. 前端基础之DOM和BOM

    前端基础之DOM和BOM JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏 ...

  6. tableview前端基础设计(初级版)

    tableView前端基础设计 实现的最终效果 操作目的:熟悉纯代码编辑TableView和常用的相关控件SearchBar.NavigationBar.TabBar等,以及布局和基本功能的实现. 一 ...

  7. web前端基础学习路线

    1.HTML和CSS的基础知识,完成网页的初步设计 2.JavaScript基础知识和DOM.BOM的学习 3.前端基础框架:CSS框架Bootstrap.JavaScript框架jquery的熟悉使 ...

  8. JS BOM DOM对象 select联动 计时器 时间 css操作 节点(标签 ) 查找标签 {前端基础之BOM和DOM}

    前端基础之BOM和DOM 前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我 ...

  9. 前端基础进阶(五):全方位解读this

    https://segmentfault.com/a/1190000012646488  https://yangbo5207.github.io/wutongluo/ 说明:此处只是记录阅读前端基础 ...

随机推荐

  1. JDBC全部分析

    2.1.搭建实验环境 1.在mysql中创建一个库,并创建user表和插入表的数据. SQL脚本如下: 1 create database jdbcStudy character set utf8 c ...

  2. 一个因xdata声明引起的隐含错误

    我们知道一般增强型c51自身的RAM只有128BYTES,根本不够用,所以一般在定义全局变量,静态变量时都要用XDATA作为关键字修饰数据的的存储类型.但要注意的是,定义和声明一定要一致,不然出现错误 ...

  3. 搜狐前端css常用命名

  4. 初识jstl标签库

    JSTL(JSP Standard Tag Library,JSP标准标签库) 是一个不断完善的开源的 JSP 标签库,是由 apache 的 jakarta 小组来维护的,根据 JST L标签所提供 ...

  5. Git-远程操作

    远程分支:远程跟踪分支remote branch是对远程分支状态的引用,是不能移动的,它会根据远程分支变化以及网络通信自动移动.Git服务器包含了远程分支master,在My Computer中的re ...

  6. JS编写自己的富文本编辑器

    富文本编辑器,网上有很多功能齐全种类丰富的如百度的Ueditor,简单适用型的如WangEditor等等.在经过一番挑选后,我发现都不适用现在的项目,然后决定自己造轮子玩玩.富文本编辑器中主要涉及到J ...

  7. Java&Xml教程(九)Java中通过XSD校验XML合法性

    Java XML校验API能够通过XSD(XML Schema Definition)校验XML文件内容的合法性.在下面的案例中使用javax.xml.validation.Validator 类通过 ...

  8. (转)使用Spring的注解方式实现AOP的细节

    http://blog.csdn.net/yerenyuan_pku/article/details/52879669 前面我们已经入门使用Spring的注解方式实现AOP了,现在我们再来学习使用Sp ...

  9. JS 冒泡事件顺序

    参考:https://www.cnblogs.com/diaoyan/p/5630014.html

  10. 【转】Delphi 文件读写

    procedure TForm1.Button1Click(Sender: TObject); variFileHandle: Integer;iFileLength: Integer;iBytesR ...