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. 分布式系统唯一ID生成方案汇总 转

    系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结.生成ID的方法有很多,适应不同的场景.需求以及性能要求.所以有些比较复杂的系统会有多个ID生成的策略.下面就介绍一些常见 ...

  2. 罪恶黑名单第四季/全集The Blacklist迅雷下载

    英文全名The Blacklist,第1季(2016)NBC.本季看点:<罪恶黑名单>我们知道:剧情紧接第三季结尾,每个人——Liz,Red以及特别行动组的其他人——似乎都有许多故事可说: ...

  3. cocos2d-x绑lua的开发环境

    2013年是手游开发井喷的一年,也是手游市场竞争最为激烈的一年,ios市场除了刷榜.刷榜,还是刷榜,而android有点像黑市的感觉,水太深(很多渠道商已经从上游控制了流量的入口).而cocos2d- ...

  4. Android:客户端和服务器之间传输数据加密

    Android客户端与服务器进行数据传输时,一般会涉及到两类数据的加密情况,一类是只有创建者才能知道的数据,比如密码:另一类是其他比较重要的,但是可以逆向解密的数据. 第一类:密码类的数据,为了让用户 ...

  5. ExtJS 4.2 教程-08:布局系统详解

    ExtJS 4.2 系列教程导航目录: ExtJS 4.2 教程-01:Hello ExtJS ExtJS 4.2 教程-02:bootstrap.js 工作方式 ExtJS 4.2 教程-03:使用 ...

  6. 拦截器通过Spring获取工厂类,注入bean对象

    // 这里需要注意一点,我们在拦截器内无法通过SpringBean的方式注入LoggerJPA,我只能通过另外一种形式. /** * 根据传入的类型获取spring管理的对应dao * @param ...

  7. mysql 的indexof函数

    LOCATE(substr,str) 返回子串substr在字符串str第一个出现的位置,如果substr不是在str里面,返回0. mysql> select LOCATE('bar', 'f ...

  8. android studio运行时报错AVD Nexus_5X_API_P is already running解决办法

    运行刚搭建好的Android环境时会报这种错误: AVD Nexus_5X_API_P is already running. If that is not the case, delete the ...

  9. [转]Apache 配置虚拟主机三种方式

    转自: http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假设服务器有个IP地址为192.168. ...

  10. [转]教你修复win7中复制粘贴失效的问题

    教你修复win7中复制粘贴失效的问题 发布时间:2018-01-17             使用win7系统的时候,我们经常需要对立面的内容进行复制粘贴来引用一些网站的内容,不过最近有网友在使用这个 ...