CSS

Cascding Style Sheet(层叠级联样式表)

1.前言

1.1CSS优势
  • 内容和表现分离
  • 可以实现CSS代码复用
  • 利用SEO,容易被搜索引擎收录
1.2CSS导入方式
<!--行内样式,在标签元素中添加style-->
<h1 style="color:red">..</h1>
<!--代码块方式(内部样式)可以直接在HTML代码中使用-->
<style>
选择器{
声明1;
声明2;
...
}
</style>
<!--链接方式(外部样式)-->
<link rel="stylesheet" href="css代码路径">
<!--导入方式(外部样式)-->
<style>
@import url("CSS路径");
</style>
优先级:就近原则

2.选择器

2.1基本选择器
    <!--对一类标签选中,优先级最低-->
/*标签类型{
声明;
}*/
h1{
color: aqua;
}
<!--对某个类标记标签选中-->
/*.+class类名{
声明;
}*/
/*<h1 class="leye">我是标题</h1>*/
.leye{
color: aqua;
}
<!--对某个标签选中,优先级最高-->
/*#+class类名{
声明;
}*/
/*<h1 id="leye">我是标题</h1>*/
#leye{
color: aqua;
}
2.2层次选择器

2.2.1后代选择器

body p{所有body后的p全部选中
...
}

2.2.2子选择器

body>p{只有body的直接子代被选中
...
}

2.2.3兄弟选择器

.class+p{ 选中class类的紧相邻下兄弟p
...
}

2.2.4通用兄弟选择器

.class~p{选中class类所有相邻的下兄弟
...
}
2.3伪类选择器
body p:first-child{选中body子代中的第一个孩子,可以更改其他修饰词
...
}

伪类选择器修饰词

first(last)-child: 当前元素的第一个(最后一个)孩子

nth-child(n) :当前元素的父类的第n个孩子

nth-of-type(n) :选择父元素父元素下第n个该类型的元素

hover:选中该类型鼠标悬浮时的状态

active:选中该类型鼠标点击时的状态

visited:选中该类型鼠标点击后的状态

after:在元素后添加代码,配合content使用

h1:after {content:url(logo.gif)}  在h1后面加一张图片
2.4属性选择器
a[id=""]{选择id为" "的a标签
...
}
id^=""以“”开头
id*=""包含“”
id$=""以“”结尾

3.样式

3.1字体样式
font-family:字体名称
font-size: 字体大小
font-weight:字体粗细
color: 字体颜色
3.2文本样式
text-align:center(排版)居中
text-indent:2em(首行缩进)2em
line-height:300px(行高)300px
text-shadow: 阴影颜色 水平位移 垂直位移 阴影半径
text-decoration:underline下划线
line-through中划线
3.3列表样式
list-style:
none 无
circle 空心圆
decimal 数字
square 方形

4.背景

background-image:url("图片路径");背景图片
background-repeat:repeat-x水平平铺
repeat-y垂直平铺
no-repeat不重复
<!--聚集方式-->
background: 颜色 url("") 位置 平铺方式

5.盒子模型

(外边距)margin:顺时针
(边框)border : 边框粗细 实现方式 颜色;
(内边距)padding:顺时针
(块居中)margin:0 auto;
(圆角边框)border-radius:顺时针
(盒子阴影)box-shadow:颜色

6.浮动

display:block    转为块元素
display:inline 转为行内元素
display:none 元素消失
float:left/right 向左/右浮动
6.1父级边框塌陷

解决办法:

1.增加父级边框宽高度

2.在父级边框下新建一个块,并清除该块的浮动

div{
clear:both;
margin:0;
padding:0;
}

父级的浮动元素在新块中被拒绝会撑开父级浮动

3.使用伪类的after

XX:after{
content:'';
display:block;
clear:both;
}
6.2overflow
overflow:scroll    滚动条
overflow:hidden 隐藏

7.定位

7.1相对定位
position:realtive   相对定位
top:.(正下负上) left:(正右负左).. right:.. bottom: ..
相对元素原来位置
7.2绝对定位

父元素没有定位的情况下,相对浏览器边框定位

父元素定位的情况下,相对父级元素定位

position:absolute 绝对定位,随着滑动会改变位置

7.3固定定位

position:fixed 固定定位,相对浏览器边框定位,随着滑动不会改变位置

7.4层级

z-index: n 0为最底层

opacity: n n(0~1)透明度

Web初级——CSS3的更多相关文章

  1. 响应式Web初级入门

    本文来自我的前端博客,原文地址:http://www.hacke2.cn/about-responsive/ 跨终端时代的到来 当你乘坐各种交通工具(公交.地铁.轻轨.火车)时你会发现,人们都个个低下 ...

  2. 1+X Web初级笔记查漏补缺+练习题

    学习笔记: position:relative是相对定位,是相对于自身位置移动,但是占据原有空间 absolute是绝对定位,原有空间不保留会被其他元素挤占 绝对定位 absolute不占位置完全浮动 ...

  3. 移动Web初级入门

    最好的阅读是输出. –玉伯 即将开始涉入移动Web了,有点小兴奋也有点小紧张,希望能在未来的团队里带来一些价值.记录一下我现在所认识的移动Web. 原文摘自我的前端博客,欢迎大家来访问 原文地址:ht ...

  4. 玩转CSS3,嗨翻WEB前端,CSS3伪类元素详解/深入浅出[原创][5+3时代]

    在我的上一篇博客中, 很多园友提出说对css3"画图"不是很理解, 在跟他们私聊了一段时间以后,加上自己在开始自学css3的时候的疑惑,我觉得大家之所以不是很理解主要是因为对伪元素 ...

  5. .net web初级工程师教程

    序 这份教程,只针对正在努力找工作的初级.net web工程师,软件这行,刚入门时找工作是个坎,希望教程对各位有帮助. 教程将通过一个实际项目,简单明了地完整呈现,在实际工作中,工程师都做些什么及怎么 ...

  6. 从零开始学 Web 之 CSS3(一)CSS3概述,选择器

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  7. 从零开始学 Web 之 CSS3(二)颜色模式,文字阴影,盒模型,边框圆角,边框阴影

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  8. 从零开始学 Web 之 CSS3(三)渐变,background属性

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  9. 从零开始学 Web 之 CSS3(五)transform

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

随机推荐

  1. 安装notepad++ 安装Python Python环境变量的数值。怎样在notepad++上运行Python的代码

    文章目录 1.下载安装一个Python的编辑器notepad++,(我这里有现成的,也可以去网上搜很多) 2.安装python,(我这里有现成的,也可以去网上下载). 3.怎样彻底删除Python,有 ...

  2. 使用react+redux实现弹出框案例

    redux 实现弹出框案例 实现效果,点击显示按钮出现弹出框,点击关闭按钮隐藏弹出框 新建弹出框组件 src/components/Modal.js, 在index.js中引入app组件,在app中去 ...

  3. [Go疑难杂症]为什么nil不等于nil

    现象 在日常开发中,可能一不小心就会掉进 Go 语言的某些陷阱里,而本文要介绍的 nil ≠ nil 问题,便是其中一个,初看起来会让人觉得很诡异,摸不着头脑. 先来看个例子: type Custom ...

  4. 一、Go语言开篇介绍

    Go语言开篇介绍 Go语言 是Google公司 在2007开发一种静态强类型.编译型语言,并在 2009 年正式对外发布. Go语言以其近C的执行性能和近解析型语言的开发效率,以及近乎于完美的编译速度 ...

  5. 驱动开发:内核封装WSK网络通信接口

    本章LyShark将带大家学习如何在内核中使用标准的Socket套接字通信接口,我们都知道Windows应用层下可直接调用WinSocket来实现网络通信,但在内核模式下应用层API接口无法使用,内核 ...

  6. 洛谷P4168 蒲公英 分块处理区间众数模板

    题面. 许久以前我还不怎么去机房的时候,一位大佬好像一直在做这道题,他称这道题目为"大分块". 其实这道题目的思想不只可以用于处理区间众数,还可以处理很多区间数值相关问题. 让我们 ...

  7. Ajax(下)

    跨域 跨域的概念:非同源请求,均为跨域.如果两个页面拥有相同的协议(protocol),端口(port)和主机(host),那么这两个页面就属于同一个源(origin). 例如:主机:http://w ...

  8. Java:ArrayList的基本使用(学习笔记)

    ​ 集合和数组的对比(为什么要有集合) 分为俩点 1. 长度:数组的长度是固定的,集合的长度是可变的. 2. 存储类型: 数组:可以存储基本数据类型,引用数据类型. 集合:只能存储引用数据类型. 小t ...

  9. Go语言核心36讲04

    我们已经知道,环境变量GOPATH指向的是一个或多个工作区,每个工作区中都会有以代码包为基本组织形式的源码文件. 这里的源码文件又分为三种,即:命令源码文件.库源码文件和测试源码文件,它们都有着不同的 ...

  10. go如何编写命令行(cli)程序

    创建一个命令行程序 问题 如何使用golang创建可以在命令行当中传递参数的程序?go如何带参数执行程序? 比如我们期望使用hello -version来查看hello程序的版本号码.或者输入hell ...