CSS样式(一)

一、样式表的应用

默认样式

  1. 行内样式

    <p style="color: red; margin-left: 20px">
        This is a paragraph
    </p>
  2. 嵌入样式

    <head>
        <style type="text/css">
            body {background-color: red}
            p {margin-left: 20px}
        </style>
    </head>
  3. 外部样式

    <head>
        <link rel="stylesheet" type="text/css" href="mystyle.css"/>
    </head>

二、样式表选择器

名称符号
标签选择器 标签名称 h1
组选择器 h1,h2
包含(后代)选择器 空格 h1 p
子元素选择器 > h1>p
相邻兄弟选择器 + h1+h2
所有兄弟选择器 ~ h1~h2
类选择器 . .+Class名称
ID选择器 # #+ID名称
通用选择器 * *
属性选择器 [属性名称] h1[属性名称]
伪类选择器 选择器:伪类名 http://www.w3school.com.cn/cssref/css_selectors.asp

三、伪类选择器

属性作用
x:link 未被访问的
x:visited 已被访问的
x:hover 鼠标指针移动到连接上
x:active 正在被点击的
x:first-child 匹配父元素第一个子元素
x:last-child 匹配父元素最后一个子元素
x:focus 匹配获得当前焦点的x元素
x:lang(c) 匹配;lang属性等于c的e元素

四、伪元素

属性作用
E:first- line 匹配E元素的第一行
E:first- letter 匹配E元素的第一个字母
E:before 在E元素之前插入生成的内容
E:after 在E元素之后插入生成的内容
// 例:
a::before {
    content: "网站";
    display: inline-block;
    background: red;
    color: white;
}
content的特殊值:
         none :不生成任何内容
         attr :插入标签属性值
         url   :使用指定的绝对或相对地址插入一个外部资源(图像,声频,视频或浏览器支持的其他任何资源)
         string:插入字符串(如:"")

五、计算特殊性值

计算特殊性值:!important > 内嵌 > ID > 类 > 标签 | 伪类 | 属性选择 > 伪对象 > 继承 > 通配符

权重、特殊性计算法: CSS样式选择器分为4个等级,a、b、c、d

  1. 如果样式是行内样式(通过Style=“”定义),那么a=1,1,0,0,0

  2. b为ID选择器的总数 0,1,0,0

  3. c为属性选择器,伪类选择器和class类选择器的数量。0,0,1,0

  4. d为标签、伪元素选择器的数量 0,0,0,1

  5. !important 权重最高,比 inline style 还要高

特殊性示例

选择器特殊性以10为基数的特殊性
style="" 1,0,0,0 1000
#wrapper #content{} 0,2,0,0 200
#content .detePosted{} 0,1,1,0 110
div#content{} 0,1,0,1 101
#content{} 0,1,0,0 100
p.comment .deteposted{} 0,0,2,1 21
p.comment{} 0,0,1,1 11
div p{} 0,0,0,2 2
p{} 0,0,0,1 1

六、鼠标样式

属性
cursor

auto 是由系统自动给出效果

default 是默认效果

pointer 鼠标手

ext 是移动到文本上的那种效果

wait 是等待的那种效果

n-resize 是向上的箭头 (↑)

s-resize 是向下的箭头 (↓)

w-resize 是向左的箭头 (←)

e-resize 是向右的箭头 (→)

ne-resize 是向右上的箭头 (↗)

nw-resize 是向左上的箭头 (↖)

se-resize 是向右下的箭头 (↘)

sw-resize 是左下的箭头 (↙)

not-allowed 是不可点击

七、文本样式属性

属性
font-size font-size:12px;
font-weight

bold (加粗)

lighter (细)

normal (略粗)

bolder (粗)

100~900

font-family 字体(宋体) 【例:font-family:"隶书";】
font-style

normal (正体)

italic (斜体)

oblique(倾斜体)

font-variant small-caps【显示大写字母的字体。】
text-transform

控制文本的大小写

none: 默认。定义带有小写字母和大写字母的标准的文本。

capitalize: 文本中的每个单词以大写字母开头。

uppercase:定义仅有大写字母。

lowercase: 定义仅有小写字母。

color

#00C 颜色

rgb(10,30,10) RGB(红色,绿色,蓝色)

rgba(10,30,10,0.5)) RGBA(红色,绿色,蓝色,透明度0-1(0:全透明 1:不透明))

text-align

center (左右居中)

left (左)

right (右)

justify(水平分散对齐)

vertical-align

middle (中间对齐)

top (上对齐)

bottom (下对齐)

line-height 数字px(上下居中)
text-indent 数字+em(设置首行文本缩进) PX固定单位 EM相对单位
padding-left 数字+em(缩进文本)
letter-spacing 增加或减少字符间的距离
text-decoration

none (无)

underline (下划线)

overline (上划线)

line-through(中划线)

blink (闪耀)

direction

ltr(默认:从左到右)

rtl(从右到左)

text-shadow xpx xpx xpx #eee(颜色) 【水平阴影 垂直阴影 模糊距离 颜色】 阴影
Word-wrap break-word(自动换行)
word-break 指定断行规则 normal:使用浏览器默认的换行规则。 break-all:允许在单词内换行。 keep-all:只能在半角空格或连字符处换行。
word-spacing 增加或减少字与字之间的空白
display

none;(隐藏)

block;(显示)

text-overflow

当文本溢出包含它的元素,应该发生什么。

clip:修剪文本。

ellipsis:显示省略符号来代表被修剪的文本。

string:使用给定的字符串来代表被修剪的文本。

white-space

指定元素内的空白怎样处理

normal:默认。空白会被浏览器忽略。

pre:空白会被浏览器保留。

nowrap:文本不会换行,文本会在在同一行上继续,直到遇到 br 标签为止。

pre-wrap:保留空白符序列,但是正常地进行换行。

pre-line:合并空白符序列,但是保留换行符。

caption         使用标题控件的字体(比如按钮、下拉列表等)。
icon       使用用于标记图标的字体。
menu       使用用于菜单中的字体(下拉列表和菜单列表)。
message-box 使用用于对话框中的字体。
small-caption 使用用于标记小型控件的字体。
status-bar 使用用于窗口状态栏中的字体。
/*限制显示行数(字数)3行*/
column-count: 3;  /*分3栏*/
column-gap: 40px;  /*栏间距*/
column-rule: 2px solid lightgreen;  /*栏间分隔线,与border设置类似 

八、背景样式属性

属性
(背景颜色) background-color

#00C 颜色

rgb(10,30,10) RGB(红色,绿色,蓝色)

rgba(10,30,10,0.5)) RGBA(红色,绿色,蓝色,透明度0-1(0:全透明 1:不透明))

(transparent 透明色)

(背景图片) background-image

url(路径) (背景图片) 【规定要使用的背景图像】

url(路径1),url(路径2) (多重复背景图片) 【规定要使用的背景图像】

(背景图片配置) background-repeat

repeat (沿水平和垂直连个方向平铺

no-repeat (图片不重复)

repeat-x; (水平重复) 【规定如何重复背景图像。】

repeat-y; (垂直重复)

(规定背景图像的位置) background-position

center; (居中)

bottom (底部)

top (顶部)

left (左)

right (右)

x轴(数组+单位) y轴(数字+单位) (图片定位)

背景复合属性 background:图像 颜色 背景 定位
(规定背景图像是否固定或者随着页面的其余部分滚动。) background-attachment fixed; (固定图片)
(规定背景图片的尺寸) background-size

auto (默认值 使用背景图片保存不变)

percentage (根据背景大小定义图片百分比)

cover (整个背景图片放大填充整个元素)

contain (根据自身宽高定义填充)

xxpx xxpx; (图片大小)

background-origin 规定背景图片的定位区域。
background-clip 规定背景的绘制区域。
/* 图片大小比例不变,居中显示,超出不显示 */
object-fit: cover;
/* 图片水平居中:写在父元素 */
text-align: center; 
/* 图片垂直居中:写在img样式 */
vertical-align: middle; 

九、渐变

属性值【说明】
background:linear-gradient()

linear-gradient([[<angle>],]? <color-stop>[, <color-stop>]+)

1、<angle>:用角度值指定渐变的方向(或角度)。

(1)、to left : 设置渐变为从右到左。相当于: 270deg

(2)、to right : 设置渐变从左到右。 相当于: 90deg

(3)、to top : 设置渐变从下到上。 相当于: 0deg

(4)、to bottom: 设置渐变从上到下。 相当于: 180deg。这是默认值

2、 <color-stop>:用于指定渐变的起止颜色

(1)、color : 指定颜色。

(2)、length : 用长度值指定起止色位置。不允许负值

(3)、percentage: 用百分比指定起止色位置。

十、表格样式属性

属性
border

1px solid blue;【 大小 样式 蓝色】

dashed 【虚线】

dotted 【点线式边框】

solid 【直线式边框】

double 【双线式边框】

groove 【槽线式边框】

ridge 【脊线式边框】

inset 【内嵌效果的边框】

outset 【突起效果的边框】

border-collapse collapse;【2线重合】
background-image middle; 【垂直对齐方式】
table-layout

设置表格布局算法

automatic:默认。列宽度由单元格内容设定。

fixed:列宽由表格宽度和列宽度设定。

padding Xpx 【表格内边距】
outline-style 边框样式(实线、虚线...)
outline-color 颜色
outline-width 宽度
border-radius border-radius:70px;/圆角/
colspan 指定要合并的列数目 <td colspan="3"></td>
rowspan 指定要合并的数目 <td rowspan="3"></td>

十一、列表样式属性

属性
【符号】 list-style-type

none 【无标记符号】去除符号

disc 【实心圆】

circle 【空心圆】

square 【实心正方形】

decimal【数字】

line-height 设置以百分比计的行高
list-style-image list-style-image:url("sqpurple.gif")【引入图片】
list-style-position 列表项目标记的位置
float left 【横向排列】
display inline 【横向排列】
reversed reversed【规定列表顺序为降序】
start number 【规定有序列表的起始值】
type 左上 右上 右下 左下 【圆角边框】

十二、盒子模型

属性
border

1px solid blue;【 大小 样式 蓝色】

dashed 【虚线】

dotted 【点线式边框】

solid 【直线式边框】

double 【双线式边框】

groove 【槽线式边框】

ridge 【脊线式边框】

inset 【内嵌效果的边框】

outset 【突起效果的边框】

border-color (上 右 下 左) 【颜色】
border-width (上 右 下 左) 【粗细】
margin 0px auto;(上下 左右) 【外边距】
padding 上 右 下 左 【内边距】
【width(padding+border)+margin】 border-box (盒子的宽高等于设置的宽高)

content-box (默认盒子的总尺寸)

【width + border + padding+margin】

box-sizing

inheritt (继承父元素的盒模型)

border-radius 1、A、a、I、i 【规定在列表中使用的标记类型】
box-shadow

0 0 5px 0 #000 inset

【水平 垂直 模糊值 阴影外延值 颜色 内阴影】【盒子阴影】

inset【不写为外阴影】

border-radius:70px; 圆角
outline outline:#00FF00 dotted thick;【设置元素周围的轮廓】

十三、浮动

属性
float

none

left (左浮动)

right (右浮动)

lnhe (默认值 不浮动)

clear

left (清除左侧浮动 不允许左侧有浮动)

right (清除右侧浮动 不允许右侧有浮动)

both (清除左右侧浮动 不允许左右侧有浮动)

none (默认值 允许有浮动)

十四、定位网页元素

属性
position

static 静态定位 (默认值 没有定位)

relative 相对定位 (根据原来自己位置定位 保留原来位置 不影响其他元素的位置)

absolute 绝对定位 (根据父级定位来定位自己 不保留原来位置 影响其它元素位置)

fixed 固定定位 (根据浏览器定位自己 )

偏移设置 top:0px left:0px right:0px bottom:0px

定位属性:

属性描述
position 把元素放置到一个静态的、相对的、绝对的、或固定的位置中。
top 定义了一个定位元素的上外边距边界与其包含块上边界之间的偏移。
right 定义了定位元素右外边距边界与其包含块右边界之间的偏移。
bottom 定义了定位元素下外边距边界与其包含块下边界之间的偏移。
left 定义了定位元素左外边距边界与其包含块左边界之间的偏移。
overflow 设置当元素的内容溢出其区域时发生的事情。
clip 设置元素的形状。元素被剪入这个形状之中,然后显示出来。
vertical-align 设置元素的垂直对齐方式。
z-index 设置元素的堆叠顺序。

十五、 刻度

在CSS中刻度是用于设置元素尺寸的单位。

1、特殊值0可以省略单位。例如:margin:0px可以写成margin:0

2、一些属性可能允许有负长度值,或者有一定的范围限制。如果不支持负长度值,那应该变换到能够被支持的最近的一个长度值。

3、长度单位包括包括:相对单位和绝对单位。

(1)、相对长度单位包括有: em, ex, ch, rem, vw, vh, vmax, vmin

(2)、绝对长度单位包括有: cm, mm, q, in, pt, pc, px

4、绝对长度单位:1in = 2.54cm = 25.4 mm = 72pt = 6pc = 96px

5、动态计算长度值:calc() = calc(四则运算) 例:用于动态计算长度值。

(1)、需要注意的是,运算符前后都需要保留一个空格,例如:width: calc(100% - 10px);

(2)、任何长度值都可以使用calc()函数进行计算;

(3)、calc()函数支持 "+", "-", "*", "/" 运算;

(4)、calc()函数使用标准的数学运算优先级规则;

6、文本相对长度单位: 注:浏览器的默认字体大小为16像素

(1)、em:相对长度单位。 相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置, 则相对于浏览器的默认字体尺寸。(相对父元素的字体大小倍数)

(2)、rem:是CSS3新增的一个相对单位,相对于根元素(即html元素)font-size计算值的倍数 相对是的HTML元素的字体大,默认16px

rem:是指相对于根元素的字体大小的单位。简单的说它就是一个相对单位。 em :是指相对于父元素的字体大小的单位。 它们之间其实很相似,只不过一个计算的规则是依赖根元素一个是依赖父元素计算。

十六、杂

!important;最高级

draggable="true";//拖拽

transparent:无颜色



posted @ 2020-06-29 11:35  神V化身  阅读(266)  评论(0编辑  收藏  举报