#css颜色表示法
css颜色值主要有三种表示方法:

1、颜色名表示,比如:red 红色,gold 金色

2、rgb表示,比如:rgb(255,0,0)表示红色

3、16进制数值表示,比如:#ff0000 表示红色,这种可以简写成 #f00
#css选择器
常用的选择器有如下几种:

##标签选择器
标签选择器,此种选择器影响范围大,建议尽量应用在层级选择器中。
举例:

*{margin:0;padding:0}
div{color:red}   <div>....</div>   <!-- 对应以上两条样式 -->
<div class="box">....</div>   <!-- 对应以上两条样式 -->

##id选择器
通过id名来选择元素,元素的id名称不能重复,所以一个样式设置项只能对应于页面上一个元素,不能复用,id名一般给程序使用,所以不推荐使用id作为选择器。
举例:

#box{color:red} <div id="box">....</div>   <!-- 对应以上一条样式,其它元素不允许应用此样式 -->

##类选择器
通过类名来选择元素,一个类可应用于多个元素,一个元素上也可以使用多个类,应用灵活,可复用,是css中应用最多的一种选择器。
举例:

.red{color:red}
.big{font-size:20px}
.mt10{margin-top:10px} <div class="red">....</div>
<h1 class="red big mt10">....</h1>
<p class="red mt10">....</p>

##层级选择器
主要应用在选择父元素下的子元素,或者子元素下面的子元素,可与标签元素结合使用,减少命名,同时也可以通过层级,防止命名冲突。
举例:

.box span{color:red}
.box .red{color:pink}
.red{color:red}<div class="box"><span>....</span><a href="#" class="red">....</a>
</div><h3 class="red">....</h3>

##组选择器
多个选择器,如果有同样的样式设置,可以使用组选择器。
举例:

.box1,.box2,.box3{width:100px;height:100px}
.box1{background:red}
.box2{background:pink}
.box2{background:gold}<div class="box1">....</div>
<div class="box2">....</div>
<div class="box3">....</div>

##伪类及伪元素选择器
常用的伪类选择器有hover,表示鼠标悬浮在元素上时的状态,伪元素选择器有before和after,它们可以通过样式在元素中插入内容。

.box1:hover{color:red}
.box2:before{content:'行首文字';}
.box3:after{content:'行尾文字';}<div class="box1">....</div>
<div class="box2">....</div>
<div class="box3">....</div>

#CSS盒子模型
##盒子模型解释
元素在页面中显示成一个方块,类似一个盒子,CSS盒子模型就是使用现实中盒子来做比喻,帮助我们设置元素对应的样式。盒子模型示意图如下:

把元素叫做盒子,设置对应的样式分别为:盒子的边框(border)、盒子内的内容和边框之间的间距(padding)、盒子与盒子之间的间距(margin)。

##设置边框
设置一边的边框,比如顶部边框,可以按如下设置:

border-top-color:red;    /* 设置顶部边框颜色为红色 */
border-top-width:10px;   /* 设置顶部边框粗细为10px */
border-top-style:solid;  /* 设置顶部边框的线性为实线,常用的有:solid(实线)  dashed(虚线)  dotted(点线); */

上面三句可以简写成一句:

border-top:10px solid red;

设置其它三个边的方法和上面一样,把上面的’top’换成’left’就是设置左边,换成’right’就是设置右边,换成’bottom’就是设置底边。

四个边如果设置一样,可以将四个边的设置合并成一句:

border:10px solid red;

##设置内间距padding

设置盒子四边的内间距,可设置如下:

padding-top:20px;     /* 设置顶部内间距20px */
padding-left:30px;     /* 设置左边内间距30px */
padding-right:40px;    /* 设置右边内间距40px */
padding-bottom:50px;   /* 设置底部内间距50px */

上面的设置可以简写如下:

padding:20px 40px 50px 30px; /* 四个值按照顺时针方向,分别设置的是 上 右 下 左
四个方向的内边距值。 */

padding后面还可以跟3个值,2个值和1个值,它们分别设置的项目如下:

padding:20px 40px 50px; /* 设置顶部内边距为20px,左右内边距为40px,底部内边距为50px */
padding:20px 40px; /* 设置上下内边距为20px,左右内边距为40px*/
padding:20px; /* 设置四边内边距为20px */

##设置外间距margin

外边距的设置方法和padding的设置方法相同,将上面设置项中的’padding’换成’margin’就是外边距设置方法。

##盒子模型的尺寸

按照下面代码制作页面:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>盒子的真实尺寸</title><style type="text/css">.box01{width:50px;height:50px;background-color:gold;}.box02{width:50px;height:50px;background-color:gold;border:50pxsolid #000}.box03{width:50px;height:50px;background-color:gold;border:50pxsolid #000;padding: 50px;}</style>
</head>
<body><div class="box01">1</div><br /><div class="box02">2</div><br /><div class="box03">3</div>
</body>
</html>

页面显示效果如下:

通过上面的页面得出结论:盒子的width和height设置的是盒子内容的宽和高,不是盒子本身的宽和高,盒子的真实尺寸计算公式如下:

  • 盒子宽度 = width + padding左右 + border左右
  • 盒子高度 = height + padding上下 + border上下

##思考题:
1.在布局中,如果我想增大内容和边框的距离,又不想改变盒子显示的尺寸,应该怎么做?

##课堂练习
请制作图中所示的标题:

##margin相关技巧
1、设置元素水平居中: margin:x auto;
2、margin负值让元素位移及边框合并

##外边距合并

外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。解决方法如下:

1、使用这种特性
2、设置一边的外边距,一般设置margin-top
3、将元素浮动或者定位

##margin-top 塌陷

在两个盒子嵌套时候,内部的盒子设置的margin-top会加到外边的盒子上,导致内部的盒子margin-top设置失败,解决方法如下:

1、外部盒子设置一个边框
2、外部盒子设置 overflow:hidden
3、使用伪元素类:

.clearfix:before{content: '';display:table;
}

#css元素溢出
当子元素的尺寸超过父元素的尺寸时,需要设置父元素显示溢出的子元素的方式,设置的方法是通过overflow属性来设置。

##overflow的设置项:
1、visible 默认值。内容不会被修剪,会呈现在元素框之外。
2、hidden 内容会被修剪,并且其余内容是不可见的,此属性还有清除浮动、清除margin-top塌陷的功能。
3、scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
4、auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
5、inherit 规定应该从父元素继承 overflow 属性的值。

#块元素、内联元素、内联块元素
元素就是标签,布局中常用的有三种标签,块元素、内联元素、内联块元素,了解这三种元素的特性,才能熟练的进行页面布局。

##块元素
块元素,也可以称为行元素,布局中常用的标签如:div、p、ul、li、h1~h6、dl、dt、dd等等都是块元素,它在布局中的行为:

  • 支持全部的样式
  • 如果没有设置宽度,默认的宽度为父级宽度100%
  • 盒子占据一行、即使设置了宽度

##内联元素
内联元素,也可以称为行内元素,布局中常用的标签如:a、span、em、b、strong、i等等都是内联元素,它们在布局中的行为:

  • 支持部分样式(不支持宽、高、margin上下、padding上下)
  • 宽高由内容决定
  • 盒子并在一行
  • 代码换行,盒子之间会产生间距
  • 子元素是内联元素,父元素可以用text-align属性设置子元素水平对齐方式,用line-height属性值设置垂直对齐方式

##解决内联元素间隙的方法
1、去掉内联元素之间的换行
2、将内联元素的父级设置font-size为0,内联元素自身再设置font-size

##内联块元素
内联块元素,也叫行内块元素,是新增的元素类型,现有元素没有归于此类别的,img和input元素的行为类似这种元素,但是也归类于内联元素,我们可以用display属性将块元素或者内联元素转化成这种元素。它们在布局中表现的行为:

  • 支持全部样式
  • 如果没有设置宽高,宽高由内容决定
  • 盒子并在一行
  • 代码换行,盒子会产生间距
  • 子元素是内联块元素,父元素可以用text-align属性设置子元素水平对齐方式,用line-height属性值设置子元素垂直对齐方式

这三种元素,可以通过display属性来相互转化,不过实际开发中,块元素用得比较多,所以我们经常把内联元素转化为块元素,少量转化为内联块,而要使用内联元素时,直接使用内联元素,而不用块元素转化了。

##display属性
display属性是用来设置元素的类型及隐藏的,常用的属性有:
1、none 元素隐藏且不占位置
2、block 元素以块元素显示
3、inline 元素以内联元素显示
4、inline-block 元素以内联块元素显示

##课堂练习
请制作图中所示的菜单:

学院Go语言视频主页
https://edu.csdn.net/lecturer/1928

[清华团队带你实战区块链开发]

(https://ke.qq.com/course/344443?tuin=3d17195d)
扫码获取海量视频及源码 QQ群:721929980

1.5 Web前端:常用CSS样式2:其它样式相关推荐

  1. WEB前端学习:CSS学习_用户界面样式

    用户界面样式 文章目录 用户界面样式 一.鼠标样式 二.轮廓 三.防止文本域拖拽 四.去除图片底侧空白间隙 五.溢出文字隐藏 1. work-break 2. white-space 3. text- ...

  2. Web前端,CSS常用之相对定位和绝对定位的区别,静态定位、子绝父相、固定定位、元素的层级关系的了解

    前言 持续学习总结输出中,今天分享的是Web前端,CSS常用之相对定位和绝对定位的区别,静态定位.子绝父相.固定定位.元素的层级关系的了解 1.定位的基本介绍 我们的网页常见布局方式有:标准流.浮动. ...

  3. web前端html+css常用布局05列表布局

    web前端html+css常用布局05列表布局 注意:引入jquery的jquery-2.1.4.min.js包 图片从自己目录中路径. 代码: <!DOCTYPE html> <h ...

  4. canvas clear 指定属性的元素_好程序员web前端分享CSS属性组成及作用

    好程序员web前端分享CSS属性组成及作用 学习目标 1.css属性和属性值的定义 2.css文本属性 3.css列表属性 4.css背景属性 5.css边框属性 6.css浮动属性 一.css属性和 ...

  5. 小白学Java Web 3 Web前端之CSS基本知识2

    这一篇接着上一篇的内容来分享,上一篇还有大量的样式属性没有列出,不过在继续分享之前,我想先来分享一下关于网页的布局相关的一些东西,因为下一篇我打算分 享用仅仅前面三小篇的内容来制作一个简单的静态网页, ...

  6. Web前端HTML+CSS全套(1~20)

    Web前端HTML+CSS全套(1~20) 拨云见日 CSS基础 切图流程 PC企业站布局 PC游戏站布局 溯本求源 HTML扩展 CSS扩展 HTMLS新语法 CSS3新语法 兼容与hack 风生水 ...

  7. Web前端,CSS中的浮动、清除浮动

    前言 持续总结输出中,今天分享的是Web前端,CSS中的浮动.清除浮动.浮动和清除浮动是我们常用的css样式.今天我们就来了解他们. 1.浮动的作用 早期的作用:图文环绕 现在的作用:网页布局 • 场 ...

  8. Web前端,CSS背景图片大小、文字阴影、盒子阴影、过渡

    前言 持续学习总结输出中,今天分享的是Web前端,CSS背景图片大小.文字阴影.盒子阴影.过渡 背景图片大小 background-size:宽度 高度; 设置背景图片的大小 取值 场景 数字+px ...

  9. Web前端,CSS中盒子模型的组成,了解掌握盒子模型的边框、内边距、外边距

    前言 持续总结输出中,今天分享的是Web前端,CSS中盒子模型的组成,了解掌握盒子模型的边框.内边距.外边距 1.盒子模型的介绍 盒子的概念 页面中的每一个标签,都可看做是一个 "盒子&qu ...

  10. Web前端,CSS中关于背景颜色、背景图片、背景平铺、背景位置、背景相关属性连写

    前言 持续总结输出中,今天分享的是Web前端,CSS中关于背景颜色.背景图片.背景平铺.背景位置.背景相关属性连写 1.背景颜色 background-color(bgc) 颜色取值: 关键字.rgb ...

最新文章

  1. Django基础之Model创建表
  2. iterparse中的events参数start和end的用法
  3. Android常见XML属性解析
  4. Delphi 与C系列区别之已见(一)
  5. 小辣椒p60手机怎么样_奇葩对决!3600元的格力手机与3599元的小辣椒V19,谁更强?...
  6. C++ vector使用的一些注意事项
  7. iOS - Swift NSRect 位置和尺寸
  8. [Java]知乎下巴第3集:来人啊快把知乎的答案装到篮子里去
  9. 英国政府将投资11.4亿英镑部署FTTP和开发5G
  10. JS获取浏览器高度和宽度
  11. 保研复习整理——数字信号处理
  12. 嵌入式单片机STM32原理及应用
  13. html文件超链接打不开,Excel中出现超链接打不开的解决方法
  14. 一张图+一个Box+一个TextArea带你DIY不一样的数字键盘
  15. 百度飞桨7日营——世界冠军带你从零实践强化学习总结
  16. win10系统怎么创建虚拟网卡?
  17. PAKDD2018小结
  18. 虚拟光驱文件bin/cue到iso的转换
  19. python英文发音-利用Python制作查单词小程序(二):下载音频并播放单词读音
  20. C语言实验报告册-20163a,C语言实验报告册20163a-资源下载人人文库网

热门文章

  1. Java+MySQL +spring+vue二手车交易管理系统
  2. 传说中的数据挖掘工程师,究竟是做什么的?
  3. 在狗爹上注册了一个 cn 域名
  4. 阿里云服务器配置Java环境
  5. hive:函数:条件函数:if函数
  6. 华为手机哪一款手机是鸿蒙系统_华为自己的手机操作系统有了!不叫麒麟叫“鸿蒙”...
  7. A40I 修改fex配置
  8. opencv识别红绿灯
  9. AVFoundation实现动态人脸识别
  10. C语言二维数组赋值问题