前端基础02CSS

CSS的几种引入方式

行内样式

行内式是在标记的style属性中设定CSS样式。不推荐大规模使用。

成都创新互联公司2013年开创至今,先为民勤等服务建站,民勤等地企业,进行企业商务咨询服务。为民勤企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

Hello world.

内部样式

嵌入式是将CSS样式集中写在网页的标签对的标签对中。格式如下:


    
    Title
    

外部样式

外部样式就是将css写在一个单独的文件中,然后在页面进行引入即可。推荐使用此方式。

CSS选择器

基本选择器

  1. 元素选择器
    p {color: "red";}
  2. ID选择器
    #i1 {
    background-color: red;
    }
  3. 类选择器
    .c1 {
    font-size: 14px;
    }
    p.c1 {
    color: red;
    }

    标签中的class属性如果有多个,要用空格分隔

  4. 通用选择器
    * {
    color: white;
    }

组合选择器

  1. 后代选择器
    /*li内部的a标签设置字体颜色*/
    li a {
    color: green;
    }
  2. 儿子选择器
    /*选择所有父级是 
    元素的

    元素*/ div>p { font-family: "Arial Black", arial-black, cursive; }

  3. 毗邻选择器
    /*选择所有紧接着
    元素之后的

    元素*/ div+p { margin: 5px; }

  4. 弟弟选择器
    /*i1后面所有的兄弟p标签*/
    #i1~p {
    border: 2px solid royalblue;
    }

属性选择器

/*用于选取带有指定属性的元素。*/
p[title] {
  color: red;
}
/*用于选取带有指定属性和值的元素。*/
p[title="213"] {
  color: green;
}

分组和嵌套

  1. 分组
    当多个元素的样式相同的时候,我们没有必要重复地为每个元素都设置样式,我们可以通过在多个选择器之间使用逗号分隔的分组选择器来统一设置元素样式。
    例如:

    div, p {
    color: red;
    }
  2. 嵌套
    多种选择器可以混合起来使用,比如:.c1类内部所有p标签设置字体颜色为红色。
    .c1 p {
    color: red;
    }

选择器的优先级

同等选择器,越靠近标签的优先级越高(就近原则)
前端基础02 CSS

伪类选择器

/* 鼠标移动到链接上 */
a:hover {
  color: #FF00FF
} 

/*input输入框获取焦点时样式*/
input:focus {
  outline: none;
  background-color: #eee;
}

伪元素选择器

first-letter
常用的给首字母设置特殊样式:

p:first-letter {
  font-size: 48px;
  color: red;
}

before

/*在每个

元素之前插入内容*/ p:before { content:"*"; color:red; }

after

/*在每个

元素之后插入内容*/ p:after { content:"[?]"; color:blue; }

before和after多用于清除浮动。

CSS属性相关

宽和高

width属性可以为元素设置宽度。

height属性可以为元素设置高度。

块级标签才能设置宽度,内联标签的宽度由内容来决定。

字体属性

文字字体、字体大小

body {
  font-family: "Microsoft Yahei", "微软雅黑", "Arial", sans-serif
}
p {
  font-size: 14px;
}

如果设置成inherit表示继承父元素的字体大小值
字重(粗细)
font-weight用来设置字体的字重(粗细)。

描述
bold 粗体

文本颜色
颜色属性被用来设置文字的颜色。

颜色是通过CSS最经常的指定:

  1. 十六进制值 - 如: #FF0000
  2. 一个RGB值 - 如: RGB(255,0,0)
  3. 颜色的名称 - 如: red

还有rgba(255,0,0,0.3),第四个值为alpha, 指定了色彩的透明度/不透明度,它的范围为0.0到1.0之间。

文字属性

文字对齐

text-align 属性规定元素中的文本的水平对齐方式。

描述
left 左边对齐 默认值
right 右对齐
center 居中对齐

文字装饰
text-decoration 属性用来给文字添加特殊效果
常用的为去掉a标签默认的自划线:

a {
  text-decoration: none;
}

首行缩进
将段落的第一行缩进 32像素:

p {
  text-indent: 32px;
}

两倍于font-size的设置就是缩进两个字体

背景属性

https://www.cnblogs.com/liwenzhou/p/7999532.html

边框

border-radius

用这个属性能实现圆角边框的效果。

将border-radius设置为长或高的一半即可得到一个圆形。

display属性

CSS盒子模型

  • margin: 用于控制元素与元素之间的距离;margin的最基本用途就是控制元素周围空间的间隔,多用来调整标签和标签之间的距离,从视觉角度上达到相互隔开的目的。
  • padding: 用于控制内容与边框之间的距离;
  • Border(边框): 围绕在内边距和内容外的边框。
  • Content(内容): 盒子的内容,显示文本和图像。
    前端基础02 CSS

margin外边距

.margin-test {
  margin-top:5px;
  margin-right:10px;
  margin-bottom:15px;
  margin-left:20px;
}

推荐使用简写:

.margin-test {
  margin: 5px 10px 15px 20px;
}

顺序:上右下左

常见居中:

.mycenter {
  margin: 0 auto;
}

padding内填充

示例:设置一个列表
效果:
前端基础02 CSS

float

在 CSS 中,任何元素都可以浮动。

浮动元素会生成一个块级框,而不论它本身是何种元素。
关于浮动的两个特点:

  • 浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
  • 由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。

三种取值

left:向左浮动

right:向右浮动

none:默认值,不浮动

.c2 {
    float: left;
    height: 100px;
    width: 100px;
}

clear

clear属性规定元素的哪一侧不允许其他浮动元素。

描述
left 在左侧不允许浮动元素。
right 在右侧不允许浮动元素。
both 在左右两侧均不允许浮动元素。

clear属性只会对自身起作用,而不会影响其他元素。

举例:解决父标签塌陷,清除浮动

因为c1和c2都是浮动元素,所以撑不起父标签,此时利用伪元素添加一个元素,同事设置清除左侧浮动可以把父标签撑起来,这个伪元素本身不需要有高度

c1
c2
.clearfix:after {
    content: "";
    clear: left;
    display: block;
}

overflow溢出属性

描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。

圆形头像示例:

效果:
前端基础02 CSS

定位(position)

  1. static --> 默认的
  2. relative --> 相对定位(相对于原来的位置来说)
  3. absolute --> 绝对定位(相对于最近的一个被定位过的祖宗标签) (完全脱离文档流)
  4. fixed --> 固定在某个位置(返回顶部按钮)

左 右 上 下
left right top bottom

示例:
返回顶部按钮样式示例

返回顶部

脱离文档流补充

脱离文档流的三种方式
float
absolute 绝对定位
fixed 固定定位

z-index

  1. 数值越大,越靠近你
  2. 只能作用于定位过的元素

示例:自定义的模态框

.c1 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0,0,0,0.5);
    z-index: 999;
}

.c2 {
    height: 400px;
    width: 600px;
    position: fixed;
    background-color: white;
    top: 50%;
    left: 50%;
    margin-top: -200px;
    margin-left: -300px;
    z-index: 1000;
}

opacity 不透明度

取值0~1
和rgba()的区别:

  1. opacity改变元素\子元素的透明度效果
  2. rgba()只改变背景颜色的透明度效果

网站栏目:前端基础02CSS
链接URL:http://scyanting.com/article/gsdchj.html