1:CSS样式的声明

选择符{
属性:值;
属性:值;
。。。
}

其中,选择符有:

标签选择器:标签名{样式}

类选择器: .类名{样式}

ID选择器:  #ID名{样式}

另外:样式属性的书写格式为:小写单词,用 - 分割。

比如:font-size 、 font-family

2:注释

/*注释*/

3:CSS可以出现的地方

內联式:写在HTMl标签内,作为style属性的值,优先级最高。

嵌入式:在HTML文件的head标签之间定义,用<style type="text/css"> </style>包裹。

外联式:在一个CSS文件内定义样式,然后在HTML文件的head标签之间通过以下标签引入:

<link href="文件名.css" rel="stylesheet" type="text/css" />

优先级:内联式 > 嵌入式 > 外部式

4:样式继承

外层html标签等某些样式,可以被内层html标签所继承。也就是说,外层标签的样式可以作用于内层标签的内容。

样式按照就近原则:离内容最近的样式优先起效。

5:!important

有些特殊的情况需要为某些样式设置具有最高优先级,可以使用!important来解决。

选择器{样式:属性值!important;}

注意:!important要写在分号的前面

6:文字排版相关属性

{font-family:"字体样式名";}
{font-size:字体大小px;}
{color:字体颜色值;}
{font-weight:bold;}//粗体
{font-style:italic;}//斜体
{text-decoration:underline;}//下划线
{text-decoration:line-through;}//删除线(用斜线划掉文本内容)

7:段落排版相关属性

p{text-indent:2em;}//段首文字缩进
p{line-height:1.5em;}//行间距
p{letter-spacing:50px;}//字体间距
p{text-align:对齐方式;}//段落内容对齐方式:居中、左对齐、右对齐

8:html标签元素分类

常用的块状元素有:

<div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<address>、<blockquote> 、<form>

块级元素特点:

1、每个块级元素都从新的一行开始,并且其后的元素也另起一行。

2、元素的高度、宽度、行高以及顶和底边距都可设置。

3、元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。

常用的内联元素(行内元素)有:

<a>、<span>、<br>、<i>、<em>、<strong>、<label>、<q>、<var>、<cite>、<code>

内联元素特点:

1、和其他元素都在一行上;

2、元素的高度、宽度及顶部和底部边距不可设置;

3、元素的宽度就是它包含的文字或图片的宽度,不可改变。

常用的内联块状元素(同时具备内联元素、块状元素的特点)有:

<img>、<input>

特点:

1、和其他元素都在一行上;

2、元素的高度、宽度、行高以及顶和底边距都可设置。

注意:

当元素的样式中,设置以下 2 个句之一:

1. position : absolute

2. float : left 或 float:right

元素的display显示类型就会自动变为 display:inline-block(块状元素)的方式显示。

9:盒模型

1、宽度:width,min-width,max-width
2、高度:height,min-height,max-height
3、边框:border:线型 颜色 粗细;线形有实线-solid,虚线-dashed,点线-dotted;另外,边框的上下左右(border-top/bottom/left/right)边可以单独设置
4、内边距:内容距边框的距离,padding,上右下左四个方向。
5、外边距:边框距边框之间的距离,margin

元素实际宽度(盒子的宽度)=左边界+左边框+左填充+内容宽度+右填充+右边框+右边界。【高度同理】

(第八点中的块级标签都具备盒子模型的特征。)

10:CSS布局模型

在网页中,元素有三种布局模型:
1、流动模型(Flow)

流动(Flow)是默认的网页布局模式。

具有2个比较典型的特征:

第一点,块状元素都会在所处的包含元素内自上而下按顺序垂直延伸分布。

第二点,在流动模型下,内联元素都会在所处的包含元素内从左到右水平分布显示。

2、浮动模型 (Float)

如果现在我们想让两个块状元素并排显示,设置元素浮动就可以实现。

设置样式中的 float属性值即可指定往哪个方向浮动。
3、层模型(Layer)【很少用,因为样式适配不灵活】

层模型有三种形式:

1、绝对定位(position: absolute)

设置样式属性position:absolute(表示绝对定位),这条语句的作用将元素从文档流中拖出来,然后使用left、right、top、bottom属性相对于其最接近的一个具有定位属性的父包含块进行绝对定位。如果不存在这样的包含块,则相对于body元素,即相对于浏览器窗口。

2、相对定位(position: relative)

设置position:relative(表示相对定位),相对于之前的位置进行移动,移动的方向和幅度由left、right、top、bottom属性确定。

3、固定定位(position: fixed)

fixed:表示固定定位,与absolute定位类型类似,但它的相对移动的坐标是视图(屏幕内的网页窗口)本身。由于视图本身是固定的,它不会随浏览器窗口的滚动条滚动而变化。

11:CSS代码缩写

1)盒子模型的内边距、边框、外边距的四个方向属性值缩写:(以外边距为例)

1、如果top、right、bottom、left的值相同,如下面代码:

margin:10px 10px 10px 10px;
可缩写为: margin:10px;
2、如果top和bottom值相同、left和 right的值相同,如下面代码: margin:10px 20px 10px 20px;
可缩写为: margin:10px 20px;
3、如果left和right的值相同,如下面代码: margin:10px 20px 30px 20px;
可缩写为: margin:10px 20px 30px;

2)颜色值缩写

当你设置的颜色是16进制的色彩值时,如果每两位的值相同,可以缩写一半。

例子1:

p{color:#000000;}
可以缩写为: p{color: #000;}
例子2: p{color: #336699;}
可以缩写为: p{color: #369;}

3)字体样式缩写:多合一

body{
font-style:italic;
font-variant:small-caps;
font-weight:bold;
font-size:12px;
line-height:1.5em;
font-family:"宋体",sans-serif;
}
这么多行的代码可以缩写为一句: body{
font:italic small-caps bold 12px/1.5em "宋体",sans-serif;
}

14:颜色值

设置颜色的方法有三种:(其中,1、3最常用)

1、颜色英文名

p{color:red;}
2、RGB颜色值 这个与 photoshop 中的 RGB 颜色是一致的,由 R(red)、G(green)、B(blue) 三种颜色的比例来配色。 p{color:rgb(133,45,200);}
每一项的值可以是 0~255 之间的整数,也可以是 0%~100% 的百分数。如: p{color:rgb(20%,33%,25%);}
3、十六进制颜色 这种颜色设置方法是现在比较普遍使用的方法,其原理其实也是 RGB 设置,但是其每一项的值由 0-255 变成了十六进制 00-ff。 p{color:#00ffff;}

15:长度值3种

1、像素
像素指的是显示器上的小点(CSS规范中假设“90像素=1英寸”)。实际情况是浏览器会使用显示器的实际像素值有关,在目前大多数的设计者都倾向于使用像素(px)作为单位。 2、em
本元素给定字体的 font-size 值,如果元素的 font-size 为 14px ,那么 1em = 14px;如果 font-size 为 18px,那么 1em = 18px。如下代码:
p{font-size:12px;text-indent:2em;}
上面代码就是可以实现段落首行缩进 24px(也就是两个字体大小的距离)。 3、百分比
p{font-size:12px;line-height:130%}
设置行高(行间距)为字体的130%(12 * 1.3 = 15.6px)。

16:CSS样式设置技巧

文字、图片水平居中:如果被设置元素为文本、图片等行内元素时,水平居中是通过给父元素设置 text-align:center 来实现的。

定宽块状元素水平居中:块状元素的宽度width为固定值时,设置“左右margin”值为“auto”来实现居中。

不定宽块状元素居中:块状元素的宽度width不固定时,有三种方法居中(这三种方法目前使用的都很多):

  1. 加入 table 标签:

    第一步:为需要设置的居中的元素外面加入一个 table 标签 ( 包括 <tbody>、<tr>、<td> )。

    第二步:为这个 table 设置“左右 margin 居中”

  2. 设置 display: inline 方法:改变块级元素的 display 为 inline 类型(设置为 行内元素 显示),然后使用 text-align:center 来实现居中效果。
  3. 设置 position:relative 和 left:50%:利用 相对定位 的方式,将元素向左偏移 50% 。通过给父元素设置float,然后给父元素设置 position:relative 和 left:50%,子元素设置 position:relative 和 left: -50% 来实现水平居中。

父元素高度确定的单行文本的竖直居中:设置父元素的 height 和line-height高度一致来实现。(height: 该元素的高度,line-height:行高(行间距))

父元素高度确定的多行文本、图片等的竖直居中:使用插入 table  (包括tbody、tr、td)标签,同时设置 vertical-align:middle。

CSS拾遗的更多相关文章

  1. CSS拾遗(二)

    接CSS拾遗(一). 4. 不透明度 opacity: 0.8; filter: alpha(opacity=80); opacity: 0.8是标准的写法:filter: alpha(opacity ...

  2. python day 22 CSS拾遗之箭头,目录,图标

    目录 day 4 learn html 1. CSS拾遗之图标 2. html文件的目录结构 3. CSS拾遗之a包含标签 4. CSS拾遗之箭头画法 day 4 learn html 2019/11 ...

  3. CSS拾遗+技巧集合

    1.实现尖角符号. 这是内联inline-block标签独有的特性. <!DOCTYPE html> <html lang="en"> <head&g ...

  4. CSS拾遗(一)

    重新看<精通CSS(第二版)>做一些记录,方便今后巩固. 1.外边距叠加 只有普通文档流中块框的垂直外边距才会发生外边距叠加.行内框.浮动框.或绝对定位框之间的外边距不会叠加. 2.相对定 ...

  5. css 拾遗

    1, 实现尖角 <style> .up{ border-top: 30px solid red; border-right:30px solid gold; border-bottom:3 ...

  6. css拾遗(一)(inline-block,absolute)

    一:inline-block中不要嵌套其他block标签,不然会破坏布局 <style> .left{ float:left; } .hide{ display:none; } a{ di ...

  7. python之路之css拾遗

    做一个鼠标碰到就会自动加边框的效果 下边的代码,主要是使自动加边框的时候,加边框的部分不会跳动 实现一张图片的点击之后出现信息

  8. 3.CSS使用基础(2)

    目录 一.CSS 链接 二.CSS 列表样式(ul) 三.CSS Table(表格) 四.盒子模型 五.CSS Border(边框) 六.CSS 轮廓(outline)属性 七.CSS Margin( ...

  9. 老男孩Python高级全栈开发工程师【真正的全套完整无加密】

    点击了解更多Python课程>>> 老男孩Python高级全栈开发工程师[真正的全套完整无加密] 课程大纲 老男孩python全栈,Python 全栈,Python教程,Django ...

随机推荐

  1. Mysql数据库自带四个数据库的解析

    1.    information_schema详细介绍: information_schema数据库是MySQL自带的,它提供了访问数据库元数据的方式.什么是元数据呢?元数据是关于数据的数据,如数据 ...

  2. 黑帆第一季/全集Black Sails迅雷下载

    黑帆 第一季 Black Sails Season 1 (2014)本季看点:剧集将会是英国小说家罗伯特·路易斯·史蒂文森(Robert Louis Stevenson)经典的海盗故事<金银岛& ...

  3. appstore防代充的一些想法

    点击这里可以查看代充相关的报道, 利用苹果商店规则漏洞,出现了一个灰色地下产业链>> 用户点击选择要充值的物品时,先向后台服务器发起一个创建订单号的请求,然后再向appstore发起购买商 ...

  4. 常用工具类系列之DateUtil

    Date.long.Calendar之间的相互转换 //当前时间 Date date = DateUtil.date(); //当前时间 Date date2 = DateUtil.date(Cale ...

  5. serializeArray()与 serialize()

    serialize()序列表表格内容为字符串,用于 Ajax 请求. serializeArray()序列化表格元素 (类似 '.serialize()' 方法) 返回 JSON 数据结构数据. .s ...

  6. SpringBoot yml 配置 多配置文件,开发环境,生产环境配置文件分开

    原文地址:https://www.cnblogs.com/baoyi/p/SpringBoot_YML.html 1. 在 spring boot 中,有两种配置文件,一种是application.p ...

  7. 7.5 zookeeper客户端curator的基本使用 + zkui

    使用zookeeper原生API实现一些复杂的东西比较麻烦.所以,出现了两款比较好的开源客户端,对zookeeper的原生API进行了包装:zkClient和curator.后者是Netflix出版的 ...

  8. C#基础知识整理:C#类和结构(1)

    1.结构功能特性? 实现代码?结构用struct关键字定义的,与类类似,但有本质区别.结构实质是一个值类型,它不需要对分配的.结构的特性:(1).结构作为参数传递时,是值传递.(2).结构的构造函数必 ...

  9. Tensorflow-3-使用RNN生成中文小说

    https://blog.csdn.net/heisejiuhuche/article/details/73010638 这篇文章不涉及RNN的基本原理,只是从选择数据集开始,到最后生成文本,展示一个 ...

  10. LTR之RankSvm

    两种对比: 1.深度学习CNN提特征+RankSVM 之前的博客:http://www.cnblogs.com/bentuwuying/p/6681943.html中简单介绍了Learning to ...