Welcome to kimi's blog

前端之CSS

前端之CSS

引入

​ 页面都是由HTML构成的,并且页面上有很多相同的HTML标签,但是相同的HTML标签在不同的位置可能有不同的样式 ,我们如何区分标签?引入标签的两大重要属性

标签两大重要属性>>:区分标签

1.class属性

​ 两个元素或者两个以上元素定义相同的样式>>>:批量查找

2.id属性

​ id属性被赋予了标识页面元素的唯一身份>>>:点对点,精准查找

<div class="c1 c2 c3" ></div>
<p class=" c1 c5" ></p>
<span class=" c1  c8"></span>
<div di="d1 "></div>
<a href="" id="d2"></a>

注意:

​ 1.一个html网页,id是不能重复的,

​ 2.一个标签可以同时定义多个class

学习CSS流程

1.先学习如何查找标签

2.再学习如何调整样式

CSS前言

​ 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。 CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。

简单理解:CSS如何显示HTML元素。当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染)。如何区分CSS版本,如CSS3就是css语言,数字3是该语言的版本号

CSS层叠样式表

​ 主要用来调整html标签的各种样式

1.CSS组成

​ 每个CSS样式由两个组成部分:选择器和声明。声明又包括属性和属性值。每个声明之后用分号结束
image

2.css语法结构

选择器{
	样式名1:样式值1;
	样式名2:样式值2;
}

3.注释语法

/*注释内容*/

4.引入CSS的多种方式

1.head内style标签内部编写(学习的时候使用)
2.head内link标签引入(标准的方式)
3.标签内部通过style属性直接编写(不推荐)

4.1 内部样式

​ 嵌入式是将CSS样式集中写在网页的标签对的标签对中

<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    h1 {
      color: orange;
    }
  </style>

4.2 外部样式

​ 外部样式就是将css写在一个单独的文件中,然后在页面进行引入即可

    <link rel="stylesheet" href="mycss.css">

4.3 行内样式(不推荐)

​ 行内式是在标记的style属性中设定CSS样式

    <h3 style="background: burlywood">style属性内直接编写CSS的第三种方法</h3>

image

css选择器

1.css基本选择器

1、标签选择器(直接按照标签名查找标签)
     div {
      color: orange;
      font-size: 30px;
    }
2、类选择器(按照标签的class值查找标签)
	.c1 {
      color: lightskyblue;
      font-size: 30px;
    }

3、id选择器(根据标签的id之精准查找标签)
	#d2 {
      color: darkolivegreen;
      font-size: 35px;
    }
4、通用选择器(直接选择页面所有的标签)
    * {
      color: cornflowerblue;
      font-size: 35px;
    }

image

2.CSS组成选择器

​ 针对标签的上下层级以及嵌套有另一种说法:父标签 后代标签 子标签 弟弟标签 哥哥标签 祖先标签

<body>
    <div>div
        <p>div>>p
            <span>div>>p>>span</span>
        </p>
        <p>div>>p</p>
        <span>div>>span</span>
    </div>
    <span>与div同级span1</span>
    <p>与div同级p</p>

    <span>与div同级span2</span>
</body>

说明

2.1.后代选择器(空格)

div span {
    color: orange;
    font-size: 35px;
}

image

2.2 .儿子选择器(大于)

div>span {
    color:burlywood;
    font-size: 35px;
}

image

2.3.毗邻选择器(加号)

div+span {
    color:burlywood;
    font-size: 35px;
}

image

2.4.弟弟选择器(小波浪号)

div~span {
    color:burlywood;
    font-size: 35px;
}

image

3.分组与嵌套

1.多个选择器合并查找
	div,p,span{
      color: rebeccapurple;
      font-size: 40px;
    }
2.查找满足条件的选择器
    #d1,.c1,span{
      color: orange;
      font-size: 40px;
    }
3.查找class含有c1的div
    div.c1 {
            color: orange;
          font-size: 40px;
    }
4.查找id是d1的div
    div#d1 {
            color: orange;
          font-size: 40px;
    }
5.查找含有c1样式值里面的含有c2样式值的p标签
    .c1 p.c2 {
            color: orange;
          font-size: 40px;
    }

body内容:
<body>
  <div id="d1" class="c1">I am div(d1)</div>
  <div id="d2" class="c2">I am div(d2)</div>
  <div id="d3" class="c1 c3">I am div(d3)</div>
  <p class="c1">I am p</p>
  <span>I am span</span>
<body>

如图:
image

image

4.属性选择器

1.按照属性名查找
    [username] {
      color:red;
      font-size: 40px;
    }
2.按照属性名等于属性值
    [username="kimi"] {
      color:red;
      font-size: 40px;
    }
3.按标签里面的属性名=属性值查找的
    div[username='kimi'] {
     color: #ff7d2a;
        font-size: 40px;
    }

image

5.伪类选择器

# a标签补充说明:未点击过的网址默认是蓝色,点击过的则为紫色

1.鼠标移动到链接上,显示orange
   a:hover {
     color: orange;
   }

2.补充
  2.1 未访问的链接,显示下列样式
    a:link {
         color: red;
       }
  2.2 选定的链接不动,采用下列样式
       a:active {
         color: lightskyblue;
       }
  2.3 已访问的链接,采用下面样式
       a:visited {
         color: darkgray;
       }

  2.4 input镖 点输入框时获取焦点时样式
       input:focus {
         background-color: #ff7d2a;
       }
	

6.伪元素选择器

1.首字母大写且渲染成红色
    p:first-letter {
        font-size: 45px;
        color: red;
    }
2.css在开头添加文本无法正常选中
   p:before {
     content: '嘿嘿嘿';
     color: orange;
   }
3.css在末尾添加文本无法正常选中
   p:after {
     content: '我是删不掉的';
     color: aquamarine;
   }

image

选择器优先级

CCS继承

​ 继承是CSS的一个主要特征,它是依赖于祖先-后代的关系的。继承是一种机制,它允许样式不仅可以应用于某个特定的元素,还可以应用于它的后代。继承是CSS重要的一部分,我们甚至不用去考虑它为什么能够这样,但CSS继承也是有限制的。有一些属性不能被继承,如:border, margin, padding, background等。

选择器的优先级

1.选择器相同 导入方式不同
就近原则

2.选择器不同 导入方式相同,其实是按照不同选择器的权重来决定的
内联样式 > id选择器 > 类选择器 > 标签选择器

image

image

CSS样式调节

1.字体相关

1.高度和宽度
只有块儿级标签可以设置 行内标签无法设置
<style>
p {
    height: 1000px;  /*高度*/
    width: 50px;	/*宽度*/
}
</style>

2.字体大小
font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体,则会尝试下一个。浏览器会使用它可识别的第一个值
```python
   body {
  font-family: "Microsoft Yahei", "微软雅黑", "Arial", sans-serif
}

font-size: 99px;  # 字体大小一般有固定的大小参考(字体代码)

3.字体粗细
font-weight用来设置字体的字重(粗细)。
font-weight: bolder;  	/*字体粗*/
font-weight: lighter;	 /*字体细*/
描述
normal 默认值,标准值
bold 粗体
bolder 加粗
lighter 更细
100~900 设置具体粗细,400等同于normal,而700等同于bold
inherit 继承父元素字体的粗细值

2.文本颜色

​ 颜色属性被用来设置文字的颜色。颜色是通过CSS最经常的指定,设置颜色方式如下

1.十六进制值 - 如: #FF0000(颜色编码)
2.一个RGB值 - 如: RGB(255,0,0)
3.颜色的名称 - 如:  red
4.还有rgba(255,0,0,0.3),第四个值为alpha(透明度), 指定了色彩的透明度/不透明度,它的范围为0.01.0之间。

3.文本属性

文本对齐

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

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

文本装饰

text-decoration 属性用来给文字添加特殊效果。

描述
none 默认,定义标准的文本
underline 定义文本下的一条线
overline 定义文本上的一条线
line_through 定义穿过文本下的一条先
inherit 继承父元素的text_decoration属性的值

去掉a标签默认的自划线

a {
  text-decoration: none;
}

首行缩进

p {
  text-indent: 32px;
}

4.背景属性

*背景颜色*/
background-color: red;
/*背景图片*/
background-image: url('1.jpg');
/*
 背景重复
 repeat(默认):背景图片平铺排满整个网页
 repeat-x:背景图片只在水平方向上平铺
 repeat-y:背景图片只在垂直方向上平铺
 no-repeat:背景图片不平铺
*/
background-repeat: no-repeat;   # 不重复
/*背景位置*/
background-position: left top;
/*background-position: 200px 200px;*/
当多个属性名有相同的前缀 那么可以简写一次性完成
div {
    width: 800px;  /*div标签设置宽高*/
    height: 800px;
    background-color: red;
    background-image: url("https://img2.baidu.com/it/u=167083063,1652780278&fm=253&fmt=auto&app=138&f=JPEG?w=369&h=472");  
	/*可以索引到图片网页地址*/
    /*background-image: url("666.png");  也可以是本地地址*/
    background-repeat: no-repeat;   /*不重复*/
    /*background-repeat: repeat-x;  只有横向重复*/
    /*background-repeat: repeat-y;  只有纵向重复*/
    background-position: center center;   /*调整图片居中到div标签中*/
    /*background:  url("666.png") blue no-repeat center center;   所有属性都可以用这一句完成*/
}

1.多个属性名前缀相同 那么可以简写

background:orange url('url') no-repeat center center; 
一个个编写即可 不写就默认

2.如何实时修改图片位置
image

边框

边框有三个属性,分别是边框宽度、边框颜色和边框样式

边框宽度

属性 描述
border-width 边框的宽度
border-style 边框的风格
border-color 边框的颜色
规范写法
border-left-width: 10px;
border-left-style: dashed;
border-left-color: orange;

简写
border-left: 10px inset blueviolet;

边框样式

边框的风格样式

描述
none 无边框
dotted 点状虚线边框
dashed 矩形虚线边框
solid 实线边框
inset 边框内嵌入一个立体边框
outset 边框外嵌一个立体边框
hidden 隐藏边框
double 双实线
groove 边框带有立体感的沟槽
ridge

图片展示:
image

圆形边框

border-radius:这个属性能实现圆角边框的效果。将border-radius设置为长或高的一半即可得到一个圆形

border-radius:50%

display属性

用于控制HTML元素的显示效果

注意:行内标签是无法设置长宽 只有块儿级可以设置

意义
display:"none" HTML文档中元素存在,但是在浏览器中不显示。一般用于配合JavaScript代码使用。
display:"block" 默认占满整个页面宽度,如果设置了指定宽度,则会用margin填充剩下的部分。
display:"inline" 按行内元素显示,此时再设置元素的width、height、margin-top、margin-bottom和float属性都不会有什么影响。
display:"inline-block" 使元素同时具有行内元素和块级元素的特点。
1.display:none  
	可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。
2.visibility: hidden  
	可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。
	
"""
行内标签不能设置长宽的,只有块级标签可以
快捷键编写:ul>li*3>a.c1{添加文本}emment
"""

下列是关于display的隐藏、块级变行内、行内变块级
image

盒子模型

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

以快递盒举例:

1.快递包里面的实际物体			 content(内容)
2.物体与内部盒子墙的距离	       padding(内边距、内填充)
3.快递盒的厚度				   border(边框)
4.快递盒之间的距离				  margin(外边距)

1.padding 内边距
padding   内部数据与边框的距离
padding: 20px; 上下左右都一致
padding: 20px 40px;  上下   左右
padding: 10px 20px 30px;上  左右  下
padding: 10px 20px 30px 40px;上 右 下 左

2.margin 外边距
margin    标签与标签之间的距离
margin:0px;  # 上下左右都一致
margin:10px 10px;  # 第一个控制上下 第二个控制左右
margin:20px 10px 20px;  # 上 左右 下
margin:10px 2px 3px 5px;  # 上 右 下 左

针对标签的嵌套 水平方向可以居中
margin: 0 auto;

注意:如果是套着,可以用margin也可以用padding,标签与标签之间可以用margin去调水平方向 。margin 0 auto ,

image

浮动float

1.定义

CSS 中,任何元素都可以浮动,浮动就是用来做页面布局的。浮动元素会生成一个块级框,而不论它本身是何种元素。

2.浮点的作用

只要是设计到页面的布局一般都是用浮动来提升规划好

3.关于浮动的特点

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

4.float格式

float: left;

三种取值

描述
left 向左浮动
right 向右浮动
none 默认值,不浮动

5.浮动现象

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    .c1 {
      border: 5px solid black;}

    .c2 {
      height: 50px;
      width: 60px;
      background-color: orange; /*背景颜色*/
      float: right; /*往右移动*/}

    .c3 {
      height: 80px;
      width: 40px;
      background-color: chocolate;
      float: left;  /*往左浮动*/}

    /*解决塌陷方法一*/
    .c4 {
      clear: left;
      border: 2px solid darkgray;
    }
    /*解决塌陷方法二*/
    .clearfix:after{
      content: '';  /*空的内容独占一行*/
      display: block; /*左右两侧都不能有浮动*/
      clear: both;
    }

    .c4 {
      background-color: blueviolet;
      height: 100px;
      width: 80px;
      float: left;
    }
  </style>
</head>
<body>
  <div class="c1 clearfix" >
      <div class="c2"></div>
      <div class="c3"></div>
      <div class="c4">你真可爱</div>
  </div>

</body>
</html>

image

image

6.浮动带来的影响

​ 浮动的元素是脱离正常文档流的,会造成父标签塌陷.

如何解决浮动的影响? 引入了clear属性

7.clear

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

描述
left 在左侧不允许浮动元素。
right 在右侧不允许浮动元素。
both 在左右两侧均不允许浮动元素。
none 默认值。允许浮动元素出现在两侧。
inherit 规定应该从父元素继承 clear 属性的值。

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

8.清除浮动有三种方式

​ 1.固定高度 (自己加一个div设置高度 )

#d4 {
	/*高度*/
	height: 100px;
}

自己设置的高度要比上面悬浮的高度要大

​ 2.伪元素清楚法(推荐使用,只要父标签塌陷就使用)

.clearfix:after {
  /*空的内容独占一行*/
  content: "";
  display: block;
  /*左右两侧都不能有浮动*/
  clear: both;
}
之后只要标签出现了塌陷的问题就给该塌陷的div标签加一个class=“clearfix”属性即可

​ 3.overflow:hidden 利用clear属性(可以使用)

.c4 {
clear: left;  # 左侧(地面 天空)不允许出现浮动的元素
border: 2px solid darkgray;
}

溢出overflow

overflow溢出属性

描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。
  • overflow(水平和垂直均设置)
  • overflow-x(设置水平方向)
  • overflow-y(设置垂直方向)

溢出现象

image

解决溢出现象

1.解决方法
/*overflow: visible;  !*默认就是可见 溢出还是展示*!*/
/*overflow: hidden;  !*溢出部分直接隐藏*!*/
/*overflow: scroll;  !*下拉框滚动*!*/
/*overflow: auto;  !*滚动显示 当宽度比较小有下侧滑动*!*/
2.代码实现:
    div {
        height: 150px;
        width: 150px;
        border: 5px solid greenyellow;
        border-radius: 50%;
        overflow: hidden;
            }
    div img {
        max-width: 100%;
            }

image

圆形头像的案例

代码展示:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    body {
      background-color: darkgray;
    }
    div {
      height: 700px;
      width: 600px;
      border: 10px solid orange;
        /*矩形方框  >>>  圆形*/
        border-radius: 50%;
        overflow: hidden;}

    div img {
        max-width: 100%;}
  </style>
</head>
<body>
  <div>
    <img src=999.png alt="">
  </div>

</body>
</html>

image

定位

标签在默认情况下都是无法通过定位的参数来移动的

static 静态(默认值,标签默认的状态 无法定位移动)
relative 相对定位(基于标签原来的位置
absolute 绝对定位(基于某个定位过的父标签做定位)
fixed 固定(基于浏览器窗口固定不动)

1.static

​ static 默认值,无定位,不能当作绝对定位的参照物,并且设置标签对象的left、top等值是不起作用的的。

2.relative

​ 相对定位是相对于该元素在文档流中的原始位置,即以自己原始位置为参照物。有趣的是,即使设定了元素的相对定位以及偏移值,元素还占有着原来的位置,即占据文档流空间。对象遵循正常文档流,但将依据top,right,bottom,left等属性在正常文档流中偏移位置。而其层叠通过z-index属性定义。
image

注意:position:relative的一个主要用法:方便绝对定位元素找到参照物

3.absolute

定义:设置为绝对定位的元素框从文档流完全删除,并相对于最近的已定位祖先元素定位,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块(即body元素)。元素原先在正常文档流中所占的空间会关闭,就好像该元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。

重点:如果父级设置了position属性,例如position:relative;,那么子元素就会以父级的左上角为原始点进行定位。这样能很好的解决自适应网站的标签偏离问题,即父级为自适应的,那我子元素就设置position:absolute;父元素设置position:relative;,然后Top、Right、Bottom、Left用百分比宽度表示。

另外,对象脱离正常文档流,使用top,right,bottom,left等属性进行绝对定位。而其层叠通过z-index属性定义
image

4.fixed

fixed:对象脱离正常文档流,使用top,right,bottom,left等属性以窗口为参考点进行定位,当出现滚动条时,对象不会随着滚动。而其层叠通过z-index属性 定义。 注意点: 一个元素若设置了 position:absolute | fixed; 则该元素就不能设置float。这 是一个常识性的知识点,因为这是两个不同的流,一个是浮动流,另一个是“定位流”。但是 relative 却可以。因为它原本所占的空间仍然占据文档流。

在理论上,被设置为fixed的元素会被定位于浏览器窗口的一个指定坐标,不论窗口是否滚动,它都会固定在这个位置。
image

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定位</title>
  <style>
    /*div {*/
    /*  background-color: blueviolet;*/
    /*  width: 200px;*/
    /*  height: 200px;*/
    /*  !*默认是静态的,移动不了的*!*/
    /*  left: 330px;*/
    /*  top: 200px;*/
    /*  !*相对定位*!*/
    /*  position: relative;*/
    /*}*/

    /*.c1 {*/
    /*  background-color: red;*/
    /*  font-size: 40px;*/
    /*  height: 200px;*/
    /*  width: 200px;*/
    /*  position: relative;*/
    /*}*/

    /*.c2 {*/
    /*  background-color: blueviolet;*/
    /*  height: 200px;*/
    /*  width: 300px;*/
    /*  !*绝对定位*!*/
    /*  position: absolute;*/
    /*  left: 200px;*/
    /*  top: 200px;*/
    /*}*/

    .c1 {
      border: 6px solid blueviolet;
      font-size: 30px;
      height: 150px;
      width: 150px;
      position: fixed;
      right: 100px;
      bottom: 200px;
    }
  </style>
</head>
<body>
<!--<div></div>-->
<!--  <div class="c1">购物车-->
<!--  <div class="c2" > 请添加购物商品</div>-->
<!--  </div>-->
<div style="height: 800px;background-color: orange"></div>
<div style="height: 800px;background-color: chocolate"></div>
<div style="height: 800px;background-color: cornflowerblue"></div>
<div class="c1">我是fixed 是基于窗口不动的</div>
</body>
</html>

注意:浏览器的body自带margin是八,要想定格,那就设置margin=0

验证浮动和定位是否脱离文档流(验证原来的位置是否保留)

1.什么是脱离文档流?
就是原来的位置没有了,可以被顶替了
2.验证对象(能够改变标签位置的方法)
浮动、相对定位、绝对定位、固定定位
3.不脱离文档流
相对定位
4.脱离文档流
浮动、决定定位、固定定位
5.测试相对定位

 <div style="background-color: chocolate;height: 100px;width: 200px;position: relative;left: 500px"></div>
<div style="background-color: burlywood;height: 100px;width: 200px"></div>
</body>

image
6.脱离文档流
测定绝对位置

 <div style="background-color: chocolate;height: 100px;width: 200px;position: absolute;left: 500px"></div>
<div style="background-color: burlywood;height: 100px;width: 200px"></div>

image
7.测定固定位置

<div style="background-color: chocolate;height: 100px;width: 200px;position: fixed;left: 500px"></div>
<div style="background-color: burlywood;height: 100px;width: 200px"></div>

image

z_index

浏览器平面不是一个二维坐标系而是一个三维坐标系
1.以百度登录页面 其实是三层结构

1.最底部是正常内容(z=0) 最底层
2.黑色的透明区(z=99)  中间层
3.白色的注册区域(z=100)离用户最近

image

body {
            margin: 0;
        }
.cover {
            background-color: rgba(127,127,127,0.5);
            position: fixed;
            left: 0;
            bottom: 0;
            right: 0;
            top: 0;
			/*模态框*/
            z-index: 100;
        }
.modal {
            height: 200px;
            width: 400px;
            background-color: white;
			/*模态框*/
            z-index: 101;
            position: fixed;
			/*从左往右占50%*/
            left: 50%;
			/*从上到下占50%*
            top: 50%;
			/*从右往左移动*/
            margin-left: -200px;
			/*从下往上移动*/
            margin-top: -100px;
        }

2.z-index 模态框

3.设置对象的层叠顺序

z-index 值表示谁压着谁,数值大的压盖住数值小的,
只有定位了的元素,才能有z-index,也就是说,不管相对定位,绝对定位,固定定位,都可以使用z-index,而浮动元素不能使用z-index
z-index值没有单位,就是一个正整数,默认的z-index值为0如果大家都没有z-index值,或者z-index值一样,那么谁写在HTML后面,谁在上面压着别人,定位了元素,永远压住没有定位的元素。
从父现象:父亲怂了,儿子再牛逼也没用

4.模态框案例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .first {
            font-size: 100px;}
        body {
            margin: 0;}
        .cover {
            font-size: 40px;
            background-color: rgba(127,127,127,0.5);
            position: fixed;
            left: 0;
            bottom: 0;
            right: 0;
            top: 0;
            z-index: 0;}
        .model {
            font-size: 40px;
            height: 400px;
            width: 600px;
            background-color: orange;
            z-index: 101;
            position: fixed;
            left:30%;
            top: 40%;
            margin-left: -200px;
            margin-top: -100px;}
    </style>
</head>
<body>
<div class="first">我是百度首页</div>
<div class="cover"></div>
<div class="model">
    <form action="">
        <p>username:<input type="text"></p>
        <p>password:<input type="text"></p>
    </form>
</div>
</body>
</html>

image

opacity

​ 用来定义透明效果。取值范围是0~1,0是完全透明,1是完全不透明。不单单可以修改颜色的透明还能同时修改字体的透明度。

  • rgba :只能影响颜色
  • opacity:可以修改颜色和字体

    #d1 {
        background-color: rgba(124,124,124,0.5);
        font-size:60px ;
    }
    #d2 {
        font-size: 60px;
        opacity: 0.5;
        color: orange;
    }

image

前端页面搭建

blog-html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>blogs</title>
    <link rel="stylesheet" href="blog.css">
</head>
<body>

</body>
  <div class="blog-left">
  <!--  头像区开始-->
      <div class="blog-avatar">
          <img src="999.png" alt="">
      </div>
<!--      头像区结束-->
      <div class="blog-title">
          <span>我的博客</span>
      </div>
      <div class="blog-info">
          <span>人间温柔观察者</span>
      </div>
      <div class="blog-link">
          <ul>
              <li><a href="">关于我</a></li>
              <li><a href="">微博号</a></li>
              <li><a href="">公共号</a></li>
          </ul>
      </div>

            <div class="blog-course">
          <ul>
              <li><a href="">插画</a></li>
              <li><a href="">Golang</a></li>
              <li><a href="">JavaScript</a></li>
          </ul>
      </div>

  </div>

  <div class="blog-right">
      <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

            <div class="article-list">
          <div class="article-title">
              <span class="title">生活之道</span>
              <span class="date">2020-12-04</span>
          </div>
          <div class="article-desc">
              <span> 将生活嚼得有滋有味,把日子过的活色生香,往往靠的不是嘴,还有一颗浸透人间烟火的心.</span>
          </div>
          <div class="article-end">
              <span>人生很短</span>
              <span>珍惜生活</span>
          </div>
      </div>

  </div>
</html>


这是博客首页的样式表
body {
    margin: 0;
    background-color: #eeeeee;
}

/*取消下划线*/
a {
    text-decoration:none ;
}

ul {
    /*取消无序列表前面的星号*/
    list-style-type: none;
    /*内边距为0*/
    padding-left: 0;
}
/*首页左侧样式*/

.blog-left {
    float: left;
    height: 100%;
    width: 20%;
    background-color: #4e4e4e;
    position:fixed;
    left: 0;
    top: 0;

}
.blog-avatar {
    height: 200px;
    width: 200px;
    border: 7px solid orange;
    border-radius: 50%;
    margin:20px auto ;
    overflow: hidden;
}
.blog-avatar img {
    max-width: 100%;
}

.blog-title ,.blog-info {
    font-size: 25px;
    color: darkgrey;
    text-align: center;
    margin: 10px auto;

}

.blog-link,.blog-course {
    text-align: center;
    font-size: 25px;
    margin-top: 100px ;
}

.blog-link ul>li,.blog-course ul>li {
    padding: 8px;
}

.blog-link a,.blog-course a {
    font-size: 25px;
    color: darkgrey;
}

.blog-link a:hover,.blog-course a:hover {
    color: white;
}
/*首页右侧样式*/
.blog-right {
    float: right;
    width: 80%;
    height: 100%;
    background-color:rgba(52,54,58,0.23);
}

.article-list {
    background-color: white;
    margin: 20px 50px 20px 20px;
    box-shadow: 20px 20px 20px rgba(0,0,0,0.6);

}

.article-list .article-title .title {
    font-size: 48px;
    border-left: 8px solid red;
    padding-left: 10px;
}

.article-list .article-title .date {
    font-size: 20px;
    font-weight: bolder;
    float: right;
    margin: 20px 20px;
}

.article-desc {
    font-size: 25px;
    font-weight: lighter;
    text-indent: 20px;
    border-bottom: 1px solid black;
}

.article-end {
    padding: 10px 10px 10px 20px;
}


image

posted @   魔女宅急便  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
Title
点击右上角即可分享
微信分享提示

目录导航