响应式网页
一、媒体查询
@media(width:320px){
html{
background-color:green;
}
}
媒体特性
- max-width: 最大宽度
- min-width: 最小宽度
书写顺序
- max-width要从大到小
- min-width要从小到大
若是没有按书写顺序进行书写,因为css的层叠性,后面写的样式一旦生效会覆盖前面写的样式。
案例:左侧隐藏
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
box-sizing: border-box;
}
.box{
display: flex;
height: 500px;
}
.box .left{
background-color: pink;
flex: 1;
}
.box .right{
background-color: skyblue;
width: 1000px;
}
@media(max-width:1000px){
.left{
display: none;
}
}
</style>
</head>
<body>
<div class="box">
<div class="left">被隐藏区域</div>
<div class="right">响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页响应式网页 </div>
</div>
</body>
</html>
(了解)完整写法
逻辑操作符:and、only和not。
媒体类型:屏幕(screen)、打印预览(print)、阅读器(speech)、不区分类型(all)
媒体特性:宽高、最小(大)宽高、屏幕方向(orientation)——portrait竖屏、landscape横屏
外部CSS
当媒体查询里面需要写多的选择器的时候,可以令其单独分成一个css文件
<link rel="stylesheet" media="(max-width:900px)" href="./5.外部CSS.css">
body{
background-color: skyblue;
}
二、Bootstrap
引入
使用
调用对应的类名
例子:调用响应式版心居中.container
栅格系统
栅格化是指将整个网页等分成12等份,每个盒子占用的对应的份数。
例如:一行四个盒子,每个盒子占3份
常用布局类:
- col-sm-3
- row
Bootstrap总共划分了6个响应区间:
xs <= 576px | sm >=576px | md >=768px | lg >=992px | xl >=1200px | xxl >=1320px | |
---|---|---|---|---|---|---|
Container max-width | None(auto) | 540px | 720px | 960px | 1130px | 1320px |
Class prefix | .col- | .col-sm- | .col-md- | .col-lg- | .col-xl- | .col-xxl- |
Class prefix中 .col-sm-()括号处加的是份数
例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="../../../bootstrap-5.3.0-alpha1-dist/css/bootstrap.min.css">
</head>
<body>
<!-- 宽度大于1200px 一行排4个盒子=3份 -->
<!-- 宽度大于768px 一行排2个盒子=6份 -->
<!-- 宽度大于576px 一行排1个盒子=12份 -->
<div class="container">
<div class="row">
<div class="col-xl-3 col-md-6 col-sm-12">1</div>
<div class="col-xl-3 col-md-6 col-sm-12">1</div>
<div class="col-xl-3 col-md-6 col-sm-12">1</div>
<div class="col-xl-3 col-md-6 col-sm-12">1</div>
</div>
</div>
</body>
</html>
效果:
全局样式
button类
- btn:默认样式
- btn-success:成功
- btn-warning:警告
- btn-(对应单词):对应功能
- 按钮尺寸:btn-lg / btn-sm
可以下载IntelliSence for CSS class names in HTML 或者 HTML CSS Support 的插件,写类名会有对应提示。
这里我用的是HTML CSS Support插件,另一个不知道为什么失效了,重启也没用。
另外,以后直接到Bootstrap5官网找到要用的类名就行了
官网:Buttons · Bootstrap v5 中文文档 v5.3 | Bootstrap 中文网 (bootcss.com)
表格类:
- table:默认样式
- table-striped:隔行变色
- table-success:表格颜色
- ……
Components组件
- 入样式表
- 引入js文件
- 复制结构,修改内容
- 以下是导航栏和轮播图的例子
原效果:
改完的效果:
字体图标
下载:导航 / Extend:图标库→安装→下载安装包→
使用:
- 复制fonts文件夹到项目里
- 网页引入bootstrap-icons.css文件
- 调用CSS类名(图标对应类名)
<i class="bi-(对应类名)"></i>
使用:
- 复制fonts文件夹到项目里
- 网页引入bootstrap-icons.css文件
- 调用CSS类名(图标对应类名)
<i class="bi-(对应类名)"></i>