响应式图片
响应式图片指的是图片会随着父元素的宽度自动缩放,最大宽度为图片的原尺寸。制作响应式图片只要在 <img>
元素加上 .img-fluid 类别,图片就会套用 max-width:100%; 和 height:auto; 两个属性成为响应式图片。
範例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>響應式圖片</title>
</head>
<body>
<div class="container">
<!-- 响应式图片,随父元素自动缩放宽度 -->
<img src="https://picsum.photos/700/300/?random=1" class="img-fluid">
<!-- 非响应式图片,不会自动缩放宽度 -->
<img src="https://picsum.photos/700/300/?random=2">
</div>
</body>
</html>
缩图
我们可以使用 .img-thumbnail 类别设定缩图,他会在图片四周加上1px宽度的框线。
範例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>縮圖</title>
</head>
<body>
<div class="container">
<img src="https://picsum.photos/400/300/?random=1" class="img-thumbnail">
</div>
</body>
</html>
框线
-
我们可以使用下列类别设定框线
-
我们可以使用下列类别设定框线色彩
-
我们可以使用下列类别设定框线圆角
-
框线粗细
框线粗细共有五种宽度,分别用数字 1 ~ 5 (细 - 粗) 表示,还可以使用数字 0 隐藏框线。ex. .border-0、.border-1、.border-top-2、.border-end-5 等等。
範例1: 框线设定与颜色
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>框線與顏色</title>
<style>
/* 设定容器宽度 */
.container {
width: 1200px;
}
/* 设定区块长度、宽度与背景色,并为区块间增加一点间隔 */
.container div {
width: 300px;
height: 200px;
background-color: rgb(234, 240, 180);
margin-bottom: 10px;
}
</style>
</head>
<body>
<div class="container">
<div class="border border-primary"></div>
<div class="border-top border-secondary"></div>
<div class="border-end border-success"></div>
<div class="border-bottom border-danger"></div>
<div class="border-start border-warning"></div>
<div class="border border-info"></div>
<div class="border border-light"></div>
<div class="border border-dark"></div>
<div class="border border-white"></div>
</div>
</body>
</html>
範例2: 框线圆角
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>框線圓角</title>
</head>
<body>
<div class="container">
<img src="https://picsum.photos/400/300/?random=1" width="40%" class="border rounded">
<img src="https://picsum.photos/400/300/?random=2" width="40%" class="border rounded-top">
<img src="https://picsum.photos/400/300/?random=3" width="40%" class="border rounded-end">
<img src="https://picsum.photos/400/300/?random=4" width="40%" class="border rounded-circle">
<img src="https://picsum.photos/400/300/?random=5" width="40%" class="border rounded-pill">
<img src="https://picsum.photos/400/300/?random=6" width="40%" class="border rounded-0">
</div>
</body>
</html>
- 四个角呈现圆角
- 上方两个角呈现圆角
- 右方两个角呈现圆角
- 显示成圆形(图片长宽一样才会是圆形)
- 显示成椭圆形
- 四个角都不呈现圆角
範例2: 框线粗细
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>框線粗細與隱藏框線</title>
<style>
.container {
width: 1200px;
}
.container div {
width: 300px;
height: 200px;
background-color: rgb(234, 240, 180);
margin-bottom: 10px;
}
</style>
</head>
<body>
<div class="container">
<div class="border border-1 border-primary"></div>
<div class="border border-2 border-primary"></div>
<div class="border border-3 border-primary"></div>
<div class="border border-4 border-primary"></div>
<div class="border border-5 border-primary"></div>
<div class="border border-0 border-primary"></div>
<div class="border border-top-0 border-primary"></div>
<div class="border border-end-0 border-primary"></div>
<div class="border border-bottom-0 border-primary"></div>
<div class="border border-start-0 border-primary"></div>
</div>
</body>
</html>
图片对齐方式
-
图片靠左对齐
我们可以使用 .float-start 类别来让图片靠左对齐。 -
图片靠右对齐
我们可以使用 .float-end 类别来让图片靠右对齐。 -
图片水平置中
Bootstrap中可以透过下列两种方法实现图片水平置中:-
使用 .mx-auto 和 .d-block 两个类别
.d-block
Bootstrap預設➡️display: block;.mx-auto (x軸的 margin 都設為 auto )
Bootstrap預設➡️margin-left: auto; margin-right: auto; -
在外层
<div>
加上 .text-center 类别
-
範例1: 图片靠左和靠右对齐
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>圖片靠左和靠右對齊</title>
</head>
<body>
<div class="container">
<!-- 图片靠左对齐 -->
<img src="https://picsum.photos/100/100/?random=1" width="30%" class="float-start">
<!-- 图片靠右对齐 -->
<img src="https://picsum.photos/100/100/?random=2" width="30%" class="float-end">
</div>
</body>
</html>
範例2: 图片水平置中(使用.mx-auto 和 .d-block)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>圖片水平置中</title>
</head>
<body>
<div class="container">
<!-- 图片水平置中 -->
<img src="https://picsum.photos/100/100/?random=1" width="30%" class="mx-auto d-block">
</div>
</body>
</html>
範例3: 图片水平置中(使用.text-center)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CDN -->
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<title>圖片水平置中</title>
</head>
<body>
<!-- 图片水平置中 -->
<div class="container text-center">
<img src="https://picsum.photos/100/100/?random=1" width="30%">
</div>
</body>
</html>