python学习_day5_Web基础(2)-CSS样式

四、CSS样式基础

4.1 CSS id \ class 选择器

id选择器

  • id就像一个元素的身份证地址,可以在网页里,唯一代表某个元素,我们也可以通过这个id快速找到它对应的元素对象

在这里插入图片描述

class 类选择器

当你想给多个元素批量设置同样的一个样式的话,就可以使用类选择器

在这里插入图片描述
输出
在这里插入图片描述

4.2 直接通过元素名设置样式

若你想给页面所有的<p><input>标签加上同样的样式,可以直接通过元素名批量设置
在这里插入图片描述

注意:id & class 选择器的样式优先级大于 元素名选择器

4.3 组合选择器

为了测试效果,先准备好3层div

<div id="layer1">
    <p>1</p>
    <div id="layer2">
        <p>layer 2</p>
        <h2>layer 2 h2</h2>
        <div id="layer3">
            <p>3</p>
            <h3>layer 3 h3</h3>
        </div>
    </div>

</div>
<p>我不在任何的div里</p>

设置好样式,加上边框

<head>
    <style type="text/css">
        #layer1 {
            height: 500px;
            padding: 30px;/*边框之间的内边距*/
            border: 1px dashed blue;
        }
        #layer2 {
            height: 400px;
            padding: 30px;
            border: 1px dashed red;
        }
        #layer3 {
            height: 300px;
            padding: 30px;
            border: 1px dashed black;
        }
    </style>
</head>

效果
在这里插入图片描述

4.3.1 后代选择器

给指定元素的所有指定后代,设置样式

比如 ,我给上图第一层div下面所有的<p>标签设置颜色

#layer1 p {
	color: red;
	background: yellow;
}

效果
在这里插入图片描述

4.3.2 子元素选择器

又可称为儿子选择器,是指可给指定元素的下一层儿子元素设置格式 ,注意,只是儿子,孙子不管

layer1的div的儿子设置样式

#layer1 > p {
    color: red;
    background: yellow;
}

4.3.3 相邻兄弟选择器

可选择紧接在另一元素后的元素,且二者有相同父元素。

#layer2 > p+h2 {
  color: red;
  background: yellow;
}

效果

在这里插入图片描述

4.3.4 多个元素组合

可同时给不相干的多个元素设置同一个样式

比如 把整 个页面所有的

标签同时设置样式

p,h3 {
  color: red;
  background: yellow;
}

效果

4.4 盒子模型

  • 所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。

  • CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。

  • 盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。

  • 下面的图片说明了盒子模型(Box Model):

在这里插入图片描述

不同部分的说明:

  • Margin(外边距) - 清除边框外的区域,外边距是透明的。
  • Border(边框) - 围绕在内边距和内容外的边框。
  • Padding(内边距) - 清除内容周围的区域,内边距是透明的。
  • Content(内容) - 盒子的内容,显示文本和图像。

为了正确设置元素在所有浏览器中的宽度和高度,你需要知道的盒模型是如何工作的。

元素的宽度和高度

重要: 当指定一个 CSS 元素的宽度和高度属性时,你只是设置内容区域的宽度和高度。要知道,完整大小的元素,你还必须添加内边距,边框和边距。

下面的例子中的元素的总宽度为300px:

div {
    width: 300px;
    border: 25px dashed yellow;
    padding: 25px;
    margin: 25px;
}
<body>

<h2>盒子模型演示</h2>

<p>CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。</p>

<div>这里是盒子内的实际内容。有 25px 内间距,25px 外间距、5px 黄色边框。</div>


</body>

效果

4.5 常用CSS属性

css有很多属性,我们先只讲几个基本的

更多的看这里:https://www.runoob.com/cssref/css-reference.html#box

4.5.1 background背景属性

属性描述CSS
background复合属性。设置对象的背景特性。1
background-attachment设置或检索背景图像是随对象内容滚动还是固定的。必须先指定background-image属性。1
background-color设置或检索对象的背景颜色。1
background-image设置或检索对象的背景图像。1
background-position设置或检索对象的背景图像位置。必须先指定background-image属性。1
background-repeat设置或检索对象的背景图像如何铺排填充。必须先指定background-image属性。1
background-clip指定对象的背景图像向外裁剪的区域。3
background-originS设置或检索对象的背景图像计算background-position时的参考原点(位置)。3
background-size检索或设置对象的背景图像的尺寸大小。3

4.5.2 边框Border 和轮廓Outline属性

属性描述CSS
border复合属性。设置对象边框的特性。1
border-bottom复合属性。设置对象底部边框的特性。1
border-bottom-color设置或检索对象的底部边框颜色。1
border-bottom-style设置或检索对象的底部边框样式。1
border-bottom-width设置或检索对象的底部边框宽度。1
border-color置或检索对象的边框颜色。1
border-left复合属性。设置对象左边边框的特性。1
border-left-color设置或检索对象的左边边框颜色。1
border-left-style设置或检索对象的左边边框样式。1
border-left-width设置或检索对象的左边边框宽度。1
border-right复合属性。设置对象右边边框的特性。1
border-right-color设置或检索对象的右边边框颜色。1
border-right-style设置或检索对象的右边边框样式。1
border-right-width设置或检索对象的右边边框宽度。1
border-style设置或检索对象的边框样式。1
border-top复合属性。设置对象顶部边框的特性。1
border-top-color设置或检索对象的顶部边框颜色1
border-top-style设置或检索对象的顶部边框样式。1
border-top-width设置或检索对象的顶部边框宽度。1
border-width设置或检索对象的边框宽度。1
outline复合属性。设置或检索对象外的线条轮廓。2
outline-color设置或检索对象外的线条轮廓的颜色。2
outline-style设置或检索对象外的线条轮廓的样式。2
outline-width设置或检索对象外的线条轮廓的宽度。2
border-bottom-left-radius设置或检索对象的左下角圆角边框。3
border-bottom-right-radius设置或检索对象的右下角圆角边框。3
border-image设置或检索对象的边框样式使用图像来填充。3
border-image-outset规定边框图像超过边框的量。3
border-image-repeat规定图像边框是否应该被重复(repeated)、拉伸(stretched)3
border-image-slice规定图像边框的向内偏移。3
border-image-source规定要使用的图像,代替 border-style 属性中设置的边框样式。3
border-image-width规定图像边框的宽度。3
border-radius设置或检索对象使用圆角边框。3
border-top-left-radius定义左上角边框的形状。3
border-top-right-radius定义右上角边框的形状。3
box-decoration-break规定行内元素被折行3
box-shadow向方框添加一个或多个阴影。3

4.5.3 内边距Padding属性

属性说明CSS
padding在一个声明中设置所有填充属性1
padding-bottom设置元素的底填充1
padding-left设置元素的左填充1
padding-right设置元素的右填充1
padding-top设置元素的顶部填充1

4.5.4 外边距(Margin) 属性

属性说明CSS
margin在一个声明中设置所有外边距属性1
margin-bottom设置元素的下外边距1
margin-left设置元素的左外边距1
margin-right设置元素的右外边距1
margin-top设置元素的上外边距1

4.5.5 position 定位属性

属性值

描述
absolute生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。
fixed生成固定定位的元素,相对于浏览器窗口进行定位。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。
relative生成相对定位的元素,相对于其正常位置进行定位。因此,“left:20” 会向元素的 LEFT 位置添加 20 像素。
static默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
sticky粘性定位,该定位基于用户滚动的位置。它的行为就像 position:relative; 而当页面滚动超出目标区域时,它的表现就像 position:fixed;,它会固定在目标位置。注意: Internet Explorer, Edge 15 及更早 IE 版本不支持 sticky 定位。 Safari 需要使用 -webkit- prefix (查看以下实例)。
inherit规定应该从父元素继承 position 属性的值。

4.5.6 字体(Font) 属性

属性说明CSS
font在一个声明中设置所有字体属性1
font-family规定文本的字体系列1
font-size规定文本的字体尺寸1
font-style规定文本的字体样式1
font-variant规定文本的字体样式1
font-weight规定字体的粗细1
@font-face一个规则,允许网站下载并使用其他超过"Web- safe"字体的字体3
font-size-adjust为元素规定 aspect 值3
font-stretch收缩或拉伸当前的字体系列3

4.5.7 文本(Text) 属性

属性说明CSS
color设置文本的颜色1
direction规定文本的方向 / 书写方向2
letter-spacing设置字符间距1
line-height设置行高1
text-align规定文本的水平对齐方式1
text-decoration规定添加到文本的装饰效果1
text-indent规定文本块首行的缩进1
text-transform控制文本的大小写1
vertical-align设置元素的垂直对齐方式1
white-space设置怎样给一元素控件留白1
word-spacing设置单词间距1
text-emphasis向元素的文本应用重点标记以及重点标记的前景色。1
hanging-punctuation指定一个标点符号是否可能超出行框3
punctuation-trim指定一个标点符号是否要去掉3
text-align-last当 text-align 设置为 justify 时,最后一行的对齐方式。3
text-justify当 text-align 设置为 justify 时指定分散对齐的方式。3
text-outline设置文字的轮廓。3
text-overflow指定当文本溢出包含的元素,应该发生什么3
text-shadow为文本添加阴影3
text-wrap指定文本换行规则3
word-break指定非CJK文字的断行规则3
word-wrap设置浏览器是否对过长的单词进行换行。3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值