复习

  1. 1.前端: 网页, html + css + js
  2. 2.html三个组成部分:标签,指令和转义字符
  3. 标签: <>包裹, 以字母开头, 可以结合-|数字, 能被浏览器解析的标记
  4. 3.常用的基本标签
  5. div,a,link,img,p,i,span,b,ul>li,(br/hr),sup,sub.pre,table>thead>tbody>tfoot>tr>th|td
  6. 4.css引入
  7. 行间式:style属性中
  8. 内联式:head标签的style标签中
  9. 外联式:css文件中
  10. 选择器{
  11. 样式块
  12. }

今日内容

  1. css基础选择器
  2. 长度与颜色设置
  3. display属性样式
  4. 字体|文本相关属性样式
  5. 背景属性样式
  6. 边界圆角属性样式
  7. 盒模型及盒模型布局

基础选择器

  1. 1.(*)通配选择器:html,body,body下的可用于显示的标签
  2. 2.div(标签选择器):该标签名对用的所有该标签
  3. 3. (.) (class选择器)(eg:.div = class='div'):类名为div的所有标签,可以重名
  4. 4.(id选择器)(eg:#div => id='div'):id名为div的唯一标签
  5. <style>
  6. div{
  7. width: 100px;
  8. height: 100px;
  9. color: red;
  10. background-color: green;
  11. }
  12. .div1{
  13. width: 200px;
  14. height: 200px;
  15. color: white;
  16. background-color: black ;
  17. }
  18. #div3{
  19. width: 20px;
  20. height: 20px;
  21. color: white;
  22. background-color: orange ;
  23. }
  24. </style>
  25. <div>123</div>
  26. <div class="div1">1</div>
  27. <div class="div2">2</div>
  28. <div id="div3">2</div>
  29. 总结:
  30. 1.在实际开发中,尽量少用或不用标签吗作为选择器,标签名作为选择器一般是该标签处在最内层的时候(使用它的语义或功能时)
  31. 2.内联和外联,相同属性采用处在下面的覆盖上面的,不同属性进行叠加
  32. 3.css语法选择器中,用.class名来代表class,用#id名来标识id
  33. 4.行间式属于逻辑的最下方,相同的属性一定会覆盖内联和外联
  34. 5.一般不使用行间式单独操作(可读性差),所以用起别名的方式来单独改变其颜色
  35. 6.class起名,分类别,可以重名,给标签设置唯一标识符是使用id

选择器的优先级

  1. 理解:控制范围越精确,优先级越高,所设置的样式会覆盖优先级低的相同属性样式
  2. 结论:优先级顺序 通配<标签 < class < id < 行间式 < |important
  3. 行间式优先级要高于内联和外联所有选择器,但是不能高于!important,属性值与分号之间加!important
  4. 注意: !important书写在属性值后;前
  5. <style>
  6. #div {
  7. background-color: yellow;
  8. }
  9. .div {
  10. background-color: yellowgreen;
  11. }
  12. div {
  13. background-color: green!important;
  14. }
  15. * {
  16. width: 100px;
  17. height: 100px;
  18. background-color: darkgreen;
  19. }
  20. /*!important 优先级要强于行间式, 在属性值与;之间设定*/
  21. </style>
  22. <div class="div" id="div" style="</div>

长度与颜色

  1. 长度单位: px mm cm em rem vw vh in
  2. 颜色设置方式:
  3. 1.颜色单词
  4. 2.#000000 ~ #FFFFFF (#abc == #AABBCC)
  5. 3.rgb(0~255, 0~255, 0~255)|rgba(0~255, 0~255, 0~255, 0~1)
  6. rgba代表颜色和透明度,0为完全透明,1为不透明
  7. <style>
  8. .div {
  9. /*px mm cm em rem vw vh in*/
  10. width: 10in;
  11. height: 100px;
  12. /*颜色:
  13. 1.颜色单词
  14. 2.#000000 ~ #FFFFFF (#abc == #AABBCC)
  15. 3.rgb(0~255, 0~255, 0~255)|rgba(0~255, 0~255, 0~255, 0~1)
  16. */
  17. background-color: rgba(255, 0, 0, 0.5);
  18. }
  19. </style>
  20. <div class="div"></div>

显示方式display

  1. 1.有些标签支持宽高,有些标签不支持宽高
  2. 2.有些标签同行显示,有些标签异行显示(独占一行)
  3. 3.有些标签由结束标识,有些标签没有结束标签(省略了)
  4. 不同的标签,在页面中书写的方式不一样,显示效果也不一样,支持的css样式程度也不一样
  5. 分类:
  6. 1.单双标签的分类
  7. 单标签:br,hr,img,meta,link,特性:功能具体,不需要内容,设置为单标签,单标签结束符在标签尾部,可以省略
  8. eg:<img />,<br />
  9. 双标签:h1,p,span,div,具有子标签,包含内容,设置为双标签,双标签首尾分离
  10. eg:<h1>内容</h1>
  11. 结论:主内容
  12. <style>
  13. span{
  14. width: 200px;
  15. height: 50px;
  16. }
  17. p{
  18. width: 200px;
  19. height: 50px;
  20. background-color: red;
  21. }
  22. img{
  23. width: 200px;
  24. /*height: 50px;*/
  25. }
  26. </style>
  27. <spam>123<i>456</i><b>789</b></spam>
  28. <spam>123<i>456</i><b>789</b></spam>
  29. <p>123<i>456</i><b>789</b></p>
  30. <p>123<i>456</i><b>789</b></p>
  31. <img src="https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=538916491,4234853604&fm=200&gp=0.jpg" alt="">
  32. <img src="https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=538916491,4234853604&fm=200&gp=0.jpg" alt="">
  33. 2.通过display属性值进行划分
  34. dispaly
  35. what: 控制标签在页面中的显示方式的属性
  36. why: 通过设置该属性的不同属性值,使其在页面中的显示方式达到设定的效果,且对于css的样式支持程度也不一样
  37. 1.同行显示inline:只支持部分css样式(不支持宽高),宽高由文本内容撑开
  38. .o1 {
  39. display: inline;
  40. /*
  41. 1.同行显示
  42. 2.只支持部分css样式(不支持宽高)
  43. 3.宽高由文本内容撑开
  44. */}
  45. 2.block:异行显示,支持所有css样式,设置了宽高就采用设置的值,宽高也具有默认的特性(后面讲)
  46. .o2 {
  47. display: block;
  48. /*
  49. 1.异行显示
  50. 2.支持所有css样式
  51. 3.设置了宽高就采用设置的值, 宽高也就有默认的特性(后面讲)
  52. */}
  53. 3.inline-block:同行显示,支持所有css样式,设置了宽高就采用设置的值,宽高也具有默认的特性(后面讲)
  54. .o3 {
  55. display: inline-block;
  56. /*
  57. 1.同行显示
  58. 2.支持所有css样式
  59. 3.设置了宽高就采用设置的值
  60. */}
  61. <owen class="o1">123</owen>
  62. <owen class="o1">123</owen>
  63. <hr>
  64. <owen class="o2">123</owen>
  65. <owen class="o2">123</owen>
  66. <hr>
  67. <owen class="o3">123</owen>
  68. <owen class="o3">123</owen>
  69. 结论:
  70. 1.带有inline的就会同行显示,带有block的就会支持所有css样式
  71. 2.带有inline的都是与内容相关的标签,带有block的主要用来搭建架构的

嵌套关系

  1. <style>
  2. .list {
  3. display: inline-block;
  4. vertical-align: middle;
  5. }
  6. /*总结: vertical-align
  7. baseline: 文本底端对齐(默认值)
  8. top: 标签顶端对齐
  9. middle: 标签中线对齐
  10. bottom: 标签底端对齐
  11. */
  12. .box {
  13. width: 80px;
  14. height: 35px;
  15. background-color: #333;
  16. }
  17. </style>
  18. <div class="list">
  19. <div class="box">呵呵呵呵呵呵呵呵呵呵呵呵</div>
  20. </div>
  21. <div class="list">
  22. <div class="box" style="height: 60px">呵呵</div>
  23. </div>
  24. why:页面架构就是由一层层嵌套关系形成的
  25. 嵌套关系有一定的规则:
  26. 1.inline-block类型不建议嵌套任意标签,所以系统的inline-block都设计成了单标签
  27. 2.inline类型只嵌套inline类型的便签
  28. 3.block类型可以嵌套任意类型标签(注:h1-h6和p,只建议嵌套inline类型)
  29. 标签的显示方式就是由display属性
  30. 结论:
  31. 1.inline嵌套block和inline-block,不起任何作用,所以只能嵌套inline
  32. 2.inline-block可以嵌套其他类型标签,但一定要结合vertical-asign属性操作,左右还有一空格间距
  33. 3.block嵌套该如何显示?

盒模型

  1. margin,border,padding,content
  2. .d${$}*7
  3. 总结:
  4. 盒模型由四部分组成: margin + border + padding + content
  5. 1.margin: 外边距, 控制盒子的位置(布局), 通过左和上控制自身位置, 通过右和下影响兄弟盒子位置(划区域)
  6. /*margin: 100px 50px;*/
  7. /*起始为上, 顺时针依次赋值, 不足边取对边*/
  8. 2.border: 边框, 样式/宽度/颜色 (solid实线 dashed虚线 dotted点状线)
  9. /*border-style: solid;*/
  10. /*border-width: 10px;*/
  11. /*border-color: red;*/
  12. /*transparent透明色*/
  13. border: blue dashed 20px;
  14. 3.padding: 内边距, 从显示角度控制文本的显示区域
  15. /*padding: 10px 10px 10px 10px;*/
  16. /*padding: 20px 30px;*/
  17. /*起始为上边, 顺时针依次赋值, 不足边取对边*/
  18. 4.content: 内容区域, 由宽 x 高组成
  19. width: 190px;
  20. height: 190px;
  21. <div class="box">123</div>
  22. <div>456</div>
  23. 注意:
  24. 1.margin,padding: 起始为上, 顺时针依次赋值, 不足边取对边
  25. 2.要做到文本内移,设置padding, 如果又想显示区域不变, 相应减少content

盒模型布局

  1. 1.上下两个盒子的margin-bottommargin-top功能相同, 同时出现, 取大值.左右正常叠加
  2. <style>
  3. .b1 {
  4. margin-bottom: 50px;
  5. }
  6. .b2 {
  7. margin-top: 50px;
  8. }
  9. </style>
  10. <div class="b1"></div>
  11. <div class="b2"></div>
  12. 2.第一个有显示区域的子级会和父级联动(margin-top重叠), 取大值
  13. 解决2:
  14. 1.父级设置border-top
  15. 2.父级设置padding-top
  16. <style>
  17. .sup {
  18. width: 200px;
  19. height: 200px;
  20. background-color: orange;
  21. /*margin-top: 40px;*/
  22. /*border-top: 1px solid black;*/
  23. padding-top: 10px;
  24. }
  25. .sub1 {
  26. /*border: 1px solid red;*/
  27. width: 50px;
  28. height: 50px;
  29. background-color: red;
  30. margin-top: 50px;
  31. }
  32. .sub2 {
  33. width: 50px;
  34. height: 50px;
  35. background-color: pink;
  36. margin-top: 50px;
  37. }
  38. </style>
  39. <section class="sup">
  40. <section class="sub1"></section>
  41. <section class="sub2"></section>
  42. </section>

day47 选择器优先级及嵌套关系的更多相关文章

  1. 基础选择器,长度与颜色,标签display,嵌套关系,盒模型,盒模型布局

    css基础选择器 # *(统配选择器): 控制html, body,以及body下所有用于显示的标签 # div(标签选择器): 该标签名对应的所有该标签 # .(class选择器)(eg: .div ...

  2. 前端,基础选择器,嵌套关系.display属性,盒模型

    基础选择器 1.统配选择器 控制html,body及body内跟显示相关的标签 *{ width:80px; height:80px; background-color:red; } 2.类选择器 以 ...

  3. day48 前端高级选择器优先级

    复习 1. 基础选择器 标签选择器(div) | 类选择器(.div1) | id选择器(#div2) <div class="div1" id="div2&quo ...

  4. 【CSS系列-选择器优先级总结】

    转:http://www.cnblogs.com/dolphinX/p/3511300.html 容易被忽略CSS特性   CSS初学感觉很简单,但随着学习的深入才感觉CSS的水由多深,平常总会遇到各 ...

  5. 一天搞定CSS: CSS选择器优先级--08

    选择器优先级:是指代码的执行顺序 通俗的说,就是多个选择器同时对一个标签分别添加样式,那么这个标签显示那个选择器设置的样式 1.优先级规则 2.规则1和2说明 优先级相同,谁后谁优先 优先级不同,优先 ...

  6. 深入理解CSS选择器优先级

    题外话 今天把 <CSS REFACTORING>(中文名叫<CSS重构:样式表性能调优>)电子书粗略的浏览了一遍,这本书很薄,150页左右,首先是介绍了什么是重构并举了两个简 ...

  7. 盒子总结,文本属性操作,reset操作,高级选择器,高级选择器优先级,边界圆角(了解),a标签的四大伪类,背景图片操作,背景图片之精灵图

    盒子总结 ''' block: 设置宽高 1.没有设置宽,宽自适应父级的宽(子级的border+padding+width=父级的width) 2.没有设置高,高由内容撑开 设置了宽高 一定采用设置的 ...

  8. 导航栏布局时遇到的问题以及解决办法 css选择器优先级

    得到的导航栏效果 添加#menu ul li{width:30px;} 效果如图 将会使列表项和分隔区域的宽度同时改变因为id选择器的优先级高于类选择器,此时应该为列表项添加内联样式如图 才能得到如下 ...

  9. 前端CSS css引入方式 css选择器 css选择器优先级

    一.       CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表 ...

随机推荐

  1. (最详细)小米Note 2的usb调试模式在哪里开启的教程

    当我们使用安卓手机链接Pc的时候,或者使用的有些工具比如我们学院营销团队当使用的工具引号精灵,之前使用的老版本就需要开启USB开发者调试模式下使用,现当新版本不需要了,如果手机没有开启USB开发者调试 ...

  2. 基于STM8的UART发送和中断接收---STM8-第二章

    1. 综述 UART的基础知识,通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器. 做软件开发的人都 ...

  3. Python import与from import使用及区别介绍

    Python程序可以调用一组基本的函数(即内建函数),比如print().input()和len()等函数.接下来通过本文给大家介绍Python import与from import使用及区别介绍,感 ...

  4. json_encode($b, JSON_FORCE_OBJECT) 可以强制转换成对象

    最近在为移动端的项目提供接口,数据格式都为json,不过在过程中遇到一个小问题,代码如下: 情况一: $tmp = array('a','b','c'); echo json_encode($tmp) ...

  5. django框架使用mysql报错,及两种解决方法

    1.django框架 settings.py文件中部分代码: DATABASES = { # 'default': { # 'ENGINE': 'django.db.backends.sqlite3' ...

  6. 4-linux、hdfs命令

    定义: linux:Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的 操作系统.它能运行主要的UNIX工具软件.应用程序和 ...

  7. springcloud相关资料收集

    http://springboot.fun/  Spring  Boot 中文索引 http://springcloud.fun/   Spring Cloud 中文索引 https://spring ...

  8. 【python】Django自定义模板函数

    参考:https://blog.csdn.net/wenyuanhai/article/details/73656761 注意: 1.自定义模板函数的路径必须为APP的templatetags下:ap ...

  9. 06 Jquery 基础

    前端学习之jquery: jQuery:一个库 Jquery的基础语法: $(selector).action() 基本选择器: <script> //基本选择器 //$("*& ...

  10. 注意source folder与folder是不同的,避免404错误

    在整合ssm框架的时候,程序和配置文件都没写错,tomcat也部署成功了,但在访问的时候一直404,web项目自带的index.jap却能正常访问,一直找不到原因,后来发现建立放配置文件的文件夹con ...