前面完成了「Steps」区块,今天来完成「Carousel」的区块。
margin-top : 96px
Carousel底下Background的height:468px
Carousel底下Background的Background-color:Primary,16% →
RGB(155,60,5,0.16)
Carousel底下Background的margin-top : 176px
Carousel的height : 628px
Carousel-Caption 标题的样式
Carousel-Caption 小标的样式
Carousel-Indicators的样式
先开一个新区块
<section>
section
里新增style
,用於设定背景横条style
里新增height
、background-color
、margin
d-flex
、align-items-center
的class
<section class="d-flex align-items-center" style="height:468px; background-color: rgba(155,60,5,0.16); margin: 176px 0px;">
新增.container,以确保carousel在container里面
<section class="d-flex align-items-center" style="height:468px; background-color: rgba(155,60,5,0.16); margin: 176px 0px;">
<div class="container">
</div>
</section>
去Bootstrap官网复制Carousel的html
<div id="carouselExampleCaptions" class="carousel slide" data-bs-ride="carousel">
<!-- 下面三个指标小icon -->
<div class="carousel-indicators">
<button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="2" aria-label="Slide 3"></button>
</div>
<div class="carousel-inner">
<!-- Carousel-1 -->
<div class="carousel-item active">
<!-- 图片/照片 1 -->
<img src="..." class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<!-- 字幕 1 -->
<h5>First slide label</h5>
<p>Some representative placeholder content for the first slide.</p>
</div>
</div>
<!-- Carousel-2 -->
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5>Second slide label</h5>
<p>Some representative placeholder content for the second slide.</p>
</div>
</div>
<!-- Carousel-3 -->
<div class="carousel-item">
<img src="..." class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5>Third slide label</h5>
<p>Some representative placeholder content for the third slide.</p>
</div>
</div>
</div>
<!-- 左箭头btn -->
<button class="carousel-control-prev" type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="visually-hidden">Previous</span>
</button>
<!-- 右箭头btn -->
<button class="carousel-control-next" type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="visually-hidden">Next</span>
</button>
</div>
在carousel最外层的div加入style,并新增z-index:9999,让它在最上层
<div style="z-index: 9999;" id="carouselExampleCaptions" class="carousel slide" data-bs-ride="carousel">
在carousel里面新增照片及字幕,并客制其样式
<!-- Carousel-1 -->
<div class="carousel-item active">
<!-- 图片/照片 1 -->
<img src="style/PHOTO/carousel_1.png" class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<!-- 字幕 1 -->
<h5 class="display-4 fw-bold">弹性自由</h5>
<p class="fs-2 fw-light">随时随地,预约上课</p>
</div>
</div>
由於设计稿并没有左右箭头,所以删掉左右箭头的btn
<div style="z-index: 9999;"id="carouselExampleCaptions" class="carousel slide" data-bs-ride="carousel">
<!-- 下面三个指标小icon -->
<div class="carousel-indicators">
<button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="2" aria-label="Slide 3"></button>
</div>
<div class="carousel-inner">
<!-- Carousel-1 -->
<div class="carousel-item active">
<!-- 图片/照片 1 -->
<img src="style/PHOTO/carousel_1.png" class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<!-- 字幕 1 -->
<h5 class="display-4 fw-bold">弹性自由</h5>
<p class="fs-2 fw-light">随时随地,预约上课</p>
</div>
</div>
<!-- Carousel-2 -->
<div class="carousel-item">
<img src="style/PHOTO/carousel_2.png" class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5 class="display-4 fw-bold">无拘无束</h5>
<p class="fs-2 fw-light">随时随地,追求梦想</p>
</div>
</div>
<!-- Carousel-3 -->
<div class="carousel-item">
<img src="style/PHOTO/carousel_3.png" class="d-block w-100" alt="...">
<div class="carousel-caption d-none d-md-block">
<h5 class="display-4 fw-bold">突破极限</h5>
<p class="fs-2 fw-light">随时随地,挑战自我</p>
</div>
</div>
</div>
</div>
修改下方的indicators
_variables.scss
修改 indicator的宽 $carousel-indicator-width
,设为16px_variables.scss
修改indicator的高 $carousel-indicator-height
,设为16px_variables.scss
修改indicator们的间距 $carousel-indicator-spacer
,设为12px* 设计稿的间距为24px,但因为这里是指每一颗圆点的间距,因此这里会把24px除以2,设为12px喔!
```scss
$carousel-indicator-width: 16px; //30px !default;
$carousel-indicator-height: 16px; //3px !default;
$carousel-indicator-spacer: 12px; //3px !default;
```
carousel-indicators
里的button
加入style
,让border-radius=100%
,这样就会变成圆形啦```html
<div class="carousel-indicators" >
<button style="border-radius: 100%;" type="button" data-bs-target="#carouselCaptions" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
<button style="border-radius: 100%;" type="button" data-bs-target="#carouselCaptions" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button style="border-radius: 100%;" type="button" data-bs-target="#carouselCaptions" data-bs-slide-to="2" aria-label="Slide 3"></button>
</div>
```
最後因为margin-bottom是40px,所以在carousel-indicators
後方加入mb-8
<div class="carousel-indicators mb-8" >
<button style="border-radius: 100%;" type="button" data-bs-target="#carouselCaptions" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
<button style="border-radius: 100%;" type="button" data-bs-target="#carouselCaptions" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button style="border-radius: 100%;" type="button" data-bs-target="#carouselCaptions" data-bs-slide-to="2" aria-label="Slide 3"></button>
</div>
酱酱,目前会变成下面这个样子XD(因为还没处理字幕的部分)
预设的字幕是在下方,所以要把它弄成垂直置中
去原本BS5档案里就有的_carousel.scss
里,找出.carousel-caption
新增top
、transform
的和bottom
的样式
最後,删除原本的bottom
样式,就完成了
(*上为修改前,下为修改後)
.carousel-caption {
position: absolute;
right: (100% - $carousel-caption-width) / 2;
bottom: $carousel-caption-spacer;
left: (100% - $carousel-caption-width) / 2;
padding-top: $carousel-caption-padding-y;
padding-bottom: $carousel-caption-padding-y;
color: $carousel-caption-color;
text-align: center;
}
.carousel-caption {
position: absolute;
top: 50%;
transform: translateY(-50%);
bottom: initial;
right: (100% - $carousel-caption-width) / 2;
//bottom: $carousel-caption-spacer;
left: (100% - $carousel-caption-width) / 2;
padding-top: $carousel-caption-padding-y;
padding-bottom: $carousel-caption-padding-y;
color: $carousel-caption-color;
text-align: center;
}
这样就会垂直置中啦!是不是很快XDXD(查了快两三个小时的成果-v-终於出生了)
登登登登,轮播三张照片的Carousel区块就完成啦!明天继续来切下一个区块吧 (๑´ㅂ`๑)
应该是上上篇的内容吧!关於如何取得更详细的资料,且分类清楚。之前我爬汇率时就总是爬不到东西,所以这次...
MIME 类别 (IANA 媒体类别) - HTTP | MDN 当我们要发 request 时候,...
简略介绍完VR、AR、MR後,把接下要介绍的是SR。 SR(替代实境):是一种裸眼3D,是一种把虚拟...
LightGBM GBDT(Gradient Boosting Decision Tree) 是利用...
预编译发生在何时? 执行全域前一刻,做全域的预编译;执行function前一刻,做function的...