一、分组与嵌套

# 选择器之间用逗号隔开表示并列
.c3,#d2,span{}

二、伪类选择器

鼠标对待a标签链接的4种状态

  • 未访问态:link

    • a:link{}
  • 鼠标悬浮态:hover
    • a:hover{}
  • 鼠标点击不松开,激活态:active
    • a:active{}
  • 访问后的状态:visted
    • a:visted{}

注意:其他文本标签可能也有悬浮态,这里需要记住的是悬浮态的使用

三、伪元素选择器

  • 对p标签的第一个字符修改

    • p:first-letter{}
  • 把abc加在p标签的段落前
    • p:before{conten:“abc”}
  • 把abc加载p标签的段落后
    • p:after{conten:“abc”}

注意:before和after通常都是用来清除浮动带来的影响:父标签塌陷的问题

四、选择器优先级

主要区分四种选择器:id选择器,类选择器,标签选择器,行内式

如果是相同选择器,id1,id2,id3谁写的离标签更近就听谁的

如果是不同选择器:行内>id>类>标签选择器(越精确越优先)

五、css属性相关

注意:只有块状标签有长宽,行内标签即使设置了也不会生效

注意:有相同前缀的属性值可以写在一起,且不区分先后

1 字体属性

p{
font-family : '字体选择'
font-size : 24px '文字大小'
font-weight :inherit'继承父标签样式'或者 bolder'加粗'或者 lighter'变细'
color:red
color:#ee762e
color:rgb(127,234,234)
color:rgba(127,234,234,0.5) # 第四个参数是透明度0-1 }

2 文字属性

p{
text-align:center('居中')/right/left/justify('两端对齐') text-decoration:underline('下划线')/overline('上划线')/line-through('删除线')/none text-indent:2em #首行空两格 }

3 背景图片

#d2
{
height: 300px;
background-image: url("timg.png"); # 设置图片为该div的背景
background-attachment: fixed; # 是图片置于底层,不会随页面的移动而移动
}

4 边框

#d1
{
border: 3px solid red;
#给该标签设置3px的红色实线边框,三者位置可随便写
#也可以通过border-top-width等去修改特定参数
border-radius:50%
# 给边框设置弧度
}

5 display属性

.c1{
display:
none # 隐藏标签,也不占位置
inline # 将标签设置为行内标签
block # 将标签设置成块级标签
inline-block # 将标签同时具备行内块级标签特点:能在同一行且能设置长宽 visibility:hidden # 单纯的隐藏,位置还在 }

6 盒子模型

所有的块级标签都可以看做是盒子

  • 盒子与盒子之间的距离(没有关联的两个):外边距margin
  • 盒子自己的厚度:border
  • 盒子里的东西到盒子的距离:内边距padding
  • 物体的大小:content

ps:body会再带8px的margin,一般情况下会先把body的margin去除

body{
margin:10px,20px # 第一个是上下,第二个是左右
margin:10px,20px,30px # 第一个是上,第二个是左右,第三个是下
margin:10px,20px,30px,40px # 上右下左,顺时针
# 也可以设置特定位置的margin,适用于padding
margin
left,top,right,bottom }

7 浮动

浮动的元素没有块级一说,本身多大就占多大,但是不会超出页面最大范围,多出的部分会被拆分

#d1
{
height: 200px;
width: 200px;
background-color: red;
float: left; # 浮在页面的左边
}

day52 html进阶的更多相关文章

  1. nodejs进阶(6)—连接MySQL数据库

    1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...

  2. nodejs进阶(4)—读取图片到页面

    我们先实现从指定路径读取图片然后输出到页面的功能. 先准备一张图片imgs/dog.jpg. file.js里面继续添加readImg方法,在这里注意读写的时候都需要声明'binary'.(file. ...

  3. JavaScript进阶之路(一)初学者的开始

    一:写在前面的问题和话 一个javascript初学者的进阶之路! 背景:3年后端(ASP.NET)工作经验,javascript水平一般般,前端水平一般般.学习资料:犀牛书. 如有误导,或者错误的地 ...

  4. nodejs进阶(3)—路由处理

    1. url.parse(url)解析 该方法将一个URL字符串转换成对象并返回. url.parse(urlStr, [parseQueryString], [slashesDenoteHost]) ...

  5. nodejs进阶(5)—接收请求参数

    1. get请求参数接收 我们简单举一个需要接收参数的例子 如果有个查找功能,查找关键词需要从url里接收,http://localhost:8000/search?keyword=地球.通过前面的进 ...

  6. nodejs进阶(1)—输出hello world

    下面将带领大家一步步学习nodejs,知道怎么使用nodejs搭建服务器,响应get/post请求,连接数据库等. 搭建服务器页面输出hello world var  http  =  require ...

  7. [C#] 进阶 - LINQ 标准查询操作概述

    LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...

  8. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

  9. C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解

    前言:已经有一个月没写点什么了,感觉心里空落落的.今天再来篇干货,想要学习Webapi的园友们速速动起来,跟着博主一起来学习吧.之前分享过一篇 C#进阶系列——WebApi接口传参不再困惑:传参详解  ...

随机推荐

  1. Centos 文件系统基础命令

    目录 centos7的目录结构(linux所以的都文件,万物接文件) 1 pwd 显示当前所在的路径 2 cd 切换目录结构 3 mkdir创建目录信息 4 touch 创建文件(触摸) 5 ls 检 ...

  2. 041.Kubernetes集群网络-K8S网络策略

    一 Kubernetes网络策略 1.1 策略说明 为实现细粒度的容器间网络访问隔离策略,Kubernetes发布Network Policy,目前已升级为networking.k8s.io/v1稳定 ...

  3. 基于docker-compose部署jumpserver

    基于docker-compose部署jumpserver 组件说明 Jumpserver 为管理后台, 管理员可以通过 Web 页面进行资产管理.用户管理.资产授权等操作, 用户可以通过 Web 页面 ...

  4. 【JMeter_10】JMeter逻辑控制器__ForEach控制器<ForEach Controller>

    ForEach控制器<ForEach Controller> 业务逻辑: ForEach控制器一般与用户自定义变量/JDBC结果变量一起使用,可以认为他就是一种遍历型循环,该节点下的脚本内 ...

  5. 基于NACOS和JAVA反射机制动态更新JAVA静态常量非@Value注解

    1.前言 项目中都会使用常量类文件, 这些值如果需要变动需要重新提交代码,或者基于@Value注解实现动态刷新, 如果常量太多也是很麻烦; 那么 能不能有更加简便的实现方式呢? 本文讲述的方式是, 一 ...

  6. Python数据结构01 线性结构

    栈 实现 后进先出的结构,主要有如下操作 *Stack() *push(item) *pop() *peek() *isEmpty() *size() class Stack(): def __ini ...

  7. Mysql使用xtrabackup备份失败处理

    在生产环境中使用的是xtrabackup,对mysql进行备份,每天0点开始备份,周日是全量备份,其他时间是基于周日做的增量备份,通过脚本实现,每天备份完成后会发送短信,突然有一天,备份全部失败,手动 ...

  8. 6、struct2使用servlet的api函数

    方法一: Struts2的Action访问Servlet API 可以通过实现装配接口没,完成对Servlet API的访问 * ServletRequestAware取得HttpServletReq ...

  9. 阿里巴巴开源canal 工具数据同步异常CanalParseException:parse row data failed,column size is not match for table......

    一.异常现象截图  二.解决方式: 1.背景 早期的canal版本(<=1.0.24),在处理表结构的DDL变更时采用了一种简单的策略,在内存里维护了一个当前数据库内表结构的镜像(通过desc ...

  10. Python3-queue模块-同步队列

    Python3中的queue模块实现多生产者,多消费者队列,特别适用于多个线程间的信息的安全交换,主要有三个类 queue.Queue(maxsize=0) 构造一个FIFO(先进先出)的队列 que ...