CSS进阶+设计

一、CSS伪类与伪元素

伪类和伪元素是用来修饰不在文档树中的部分

1、CSS伪类

伪类用于当已有元素处于的某个状态时,为其添加对应的样式,这个状态是根据用户行为而动态变化的。

(1)操作状态伪类

        ①用于链接<a><a>标签</a>的伪类

:link链接未被点击及未被鼠标悬停时
:hover鼠标悬停在元素上时
:active链接被点击时
:visited链接被点击后

        ②用于输入框input获取焦点的伪类

:focus当输入框input获取焦点时的样式

(2)选择器状态伪类

        ①与type有关

element:first-of-type选择父元素下的第一个类型为element的元素
element:last-of-type选择父元素下的最后一个类型为element的元素
element:nth-of-type(n)选择父元素下的第n个类型为element的元素
element:nth-last-of-type(n)选择父元素下的倒数第n个类型为element的元素
element:only-of-type选择父元素下的唯一的类型为element的元素

        ②与child有关

element:first-child选择父元素下的第一个类型为element的元素,若该元素不是element类型,则选择失败
element:last-child选择父元素下的最后一个类型为element的元素,若该元素不是element类型,则选择失败
element:nth-child(n)选择父元素下的第n个类型为element的元素,若该元素不是element类型,则选择失败
element:nth-last-child(n)选择父元素下的倒数第n个类型为element的元素,若该元素不是element类型,则选择失败
element:only-child选择父元素下的唯一的类型为element的元素,若该元素不是element类型,则选择失败

 2、CSS伪元素

伪元素用于创建一些不在文档树中的元素,并为其添加样式。

(1)添加内容类伪元素

        ①::before

<span class="hello">我是 Regena</span>
.hello::before{
    content: '????';
    color: blue;
    font-size: larger;
    background-color: pink;
}

        ②::after

<span class="hello">我是 Regena</span>
.hello::after{
    content: '????';
    color: blue;
    font-size: larger;
    background-color: pink;
}

(2)修改样式类伪元素

        ①::first-letter

        ②::first-line

二、关系选择器

关系选择器是能够根据其他元素的关系选择适合的元素选择器。

1、子元素选择器

作用:通过指定的父元素找到指定的子元素

语法:父元素>子元素{}

2、后代选择器

作用:通过指定的祖先元素找到指定的子元素

语法:父元素 子元素{} (父元素和子元素中间空格)

3、下一个兄弟选择器

作用:选择与当前元素紧挨着的第一个同级元素

语法:兄+弟{}

4、下面所有兄弟选择器

作用:选择当前元素下的所有同级元素

语法:兄~弟{}

三、CSS布局

四、盒模型

页面中的所有元素都可以看成一个盒子,占据着一定的页面空间。

盒子模型组成 :content   下面都是CSS样式的属性

  • height高度 
  • width宽度
  • border边框
  • padding内边距
  • margin外边距

一个盒子的实际宽度、高度:content+padding+border+margin

Overflow属性:当内容溢出盒子框时,通过overflow属性进行如下设置

Hidden超出部分不可见
Scroll显示滚动条
Auto如果有超出部分,显示滚动条

Border:边框属性

属性描述取值
border-width边框宽度px、thin、medium、thick
border-style边框样式dashed、dotted、solid、double
border-color边框颜色颜色值
border宽度、样式、颜色width style color

div{

border-width:2px;

border-style:solid;

border-color:red;

}

div{

border:2px solid;

}

div{

border-bottom:1px solid red;

}

Padding:内边距属性,取值:px, %(外层盒子的宽度和高度)

Margin:外边距属性

内边距外边距组成
padding:5px;margin:5px;上右下左
padding-top:10%;margin-top
padding-leftmargin-left
padding-rightmargin-right
padding-bottommargin-bottom

对浏览器默认的设置清零:

*{margin:0;

   padding:0;

  }

Margin用法

margin:1px;

margin:1px 2px;

margin:1px 2px 3px;

margin:1px 2px 1px 3px;

注意:虽然上下边距都为1px,但是这里不能缩写。

Margin的合并:垂直方向合并,水平方向不合并

水平居中

图片、文字水平居中   text-align:center;

div水平居中                margin:0 auto;         浏览器自动计算

五、调试CSS

打开网页后鼠标右键点击“检查”,检查网页元素。

选中所要查看的dom节点,即可查看有该节点的所有信息。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值