CSS基础

CSS 基础

优先级很高的标签

h1-h6 标题

articel

p

nav

列表 ul>li ol>li

img

a

table tr td

form

label

input type=checkbox radio test password button submit reset number date select>option

textarea

required


层叠样式表 cascading style sheet  – CSS

1 内联样式   head 标签内的  style 标签内部

2  嵌套样式   写在标签之中。

3  外联样式   写在其他文件上,用 link 连接   也在 head 之内

**         link red=”stylesheet” href=”css 地址”**

4  外部导入 写在 head 标签内, style 标签内部  最前面

@import“css 地址”;

后面的同种属性的样式会覆盖上面的样式

样式语法

选择器{

样式的名字:样式的值;

}

选择器类型

元素选择器   标签名

id 选择器       #id

类选择器       .class

通配符选择器      *全部

**    选择器的优先级:越能确定元素的选择器优先级就越高**

!important(加在样式值后面)>id 选择器>class 选择器>元素选择器>通配符选择器

复合选择器

**    ****   ** 并集选择器     用 **,**隔开 –h1,h2,p,div

交集选择器       每个选择器之间直接连接,元素选择器写在最前面

后代选择器   空格隔开 >子代选择器

**                         div>div>p**

颜色

**    英语单词**

**   ** 16 进制 0-9 a-f #000000 黑色 # ffffff 白色

rgb(0-255,0-255,0-255)

rgba(0-255,0-255,0-255,0-1)

背景

background  背景 (背景色,背景图)

background-color  背景色

background-image  背景图片   url(“图片路径”)

字体

**   ** 单位  **px**  像素

**em **一个字体的宽度。width 和 height 也可以用这个单位,

居中   text-align:center;

边距

**         外边框  margin  可以有负值**

一个值   四个方向

两个值   第一个值代表上下,第二值代表左右。

三个值   上,左右, 下(左边和右边值一样)

四个值   上,右,下 ,左 —从 12 点钟方向顺时针

单边设置

margin-top

margin-left

margin-right

margin-bottom

**        ****外边距的合并**

           1.兄弟的垂直方向的外边距相遇,会合并。以最大的外边距的值为准。

2.水平方向正常正常叠加

**        **

**        ****margin 的 bug**

第一个子元素的上部 margin,会应用到父元素上。

**  解决方法:**

**    ****    **    **   ** 1.给父元素设置 padding

2.给父元素设置边框

3.给父元素加 overflow:hidden。

内边距  padding  参考 margin

边框  border

第一个值   线条的粗细

第二个值   线条额类型

solid  实线

dashed  虚线

dotted  点线

double  双实线

第三个值     线条的颜色,默认和字体颜色一样

vertical-align:top

  • 应用,图文(行内块级元素)对齐方式, 默认、是底部对齐
  • 可修改图片的基线,垂直的居中,
  • top  (顶部对齐)、middle(中部对齐)、bottom(底部对齐)
  • 多用于 table 以及行内块级元素

多行文本

顶部对齐

给图片设置浮动。(图片在文字的前面)

float:left|right|none

文本的对齐

**    **** **   水平的对齐:text-algin:left|right|center

text-decoration:underline;  文本下划线

单行文本的垂直居中

**    ****   ** line-height:  行高(行高等于 height)

多行文本的垂直居中,单行文本也居中.

**    ****   ** 1.display:table-cell**;**** ** 设置为表格。**   –display: **该属性规定元素应该生成的框的类型。

**        vertical-align:middle;**

**        **

**       ** 2.display:flex;

**           align-items:center;**

**      **

**                    **

float

**           **

float:脱离文档流

**   ** 标准文档流:html 中的元素默认的排列方式,块级元素独占一行,行内元素行内排布,行满换行。

行内元素,块级元素,行内块级元素。

行内元素(内嵌元素):行内排列,设置高宽无效。

块级元素:  独占一行,可以设置高宽。

**  行内块级元素:行内排列,可以设置高宽。(img)**

1.浮动的影响

1.1  元素变成行内块级元素

    1.2  浮动的元素会影响后面元素的位置。

    1.3  连续浮动元素,

        左浮动元素,从左到右,从上到下排

        右浮动元素,从右到左,从上到下排。

    1.4 浮动塌陷

        子元素浮动,父元素内就相当于没有内容了。所以父元素高度会变小(或直接没有高度)。

2.清除浮动的影响:

对不想被浮动影响的元素设置

clear:right\left**both**

3.浮动塌陷的影响的解决方式

1. 给父元素设置高度**

2.给父元素加一个假儿子,比如 div,高度为 0,给假儿子加  clear:both。(就是靠假儿子把宽度撑起来)

3.**给父元素设置  overflow:hidden;(超出父元素的子元素就隐藏,相当于绑定了父子关系。)

4.伪类,原理和 2 相似

div:after{ –after 在 div 后插入行内元素

content:’’; –添加任意的行内元素内容

clear:both; –清除浮动对该元素的影响

display:block;  –   转换为块级元素

}

4.浮动不会遮挡文本流   就是文字、图片、多媒体文件等。

*{ <!–  关闭全局的样式。list-style:none 是关闭 li  的前面的图标样式 –!>

margin:0;

pading:0;

list-style:none;

}

margin:auto

自动居中。但需要设置块级元素的宽度,因为**块级元素默认宽度是一整行**。**且该宽度必须小于父级元素的宽度**。不设置 width,就不存在居中

浏览器的一个字的宽度为 21px

** ** display**:table-cell;  设置为表格。**

**    ****    **    **    **    inline   —行内元素

**    ****    **    **    **    block  —块级元素

**    ****    **    **    **    inline-block  —行内块级元素


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!