IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> BootStrap(day04) -> 正文阅读

[JavaScript知识库]BootStrap(day04)

五、组件

总结:boot 中的事件, 关注两件事
1. 如何触发的,自定义属性触发,触发方式是这个属性的值
2. 事件触发的目标
button 绑定目标使用 data-target=“#ID”
a 绑定目标使用 href=“#ID”

  1. 导航
    ① 水平导航
    ul.nav > li.nav-item > a.nav-link

    ul.nav: 弹性布局, 去 ul 圆点, 主轴方向默认 X 轴

    li.nav-item: 配合 ul.nav-justified 让 li 等宽显示

    a.nav-link: 块级,内边距撑开, hover,focus 等

    ② 选项卡导航
    导航的样式: ul.nav.nav-tabs>li.nav-item>a.nav-link

    .nav-tabs: 让水平导航,变为选项卡导航

    显示内容的样式: div.tab-content>div.tab-pane

    div.tab-content: 没有任何样式,作为自带选择器的路径
    div.tab-pane: 与父元素配合,让当前元素 display: none
    .active: 与 .tab-content 配合,让当前元素显示

    事件: data-toggle="tab"

    ③胶囊导航
    ul.nav.nav-pllis>li.nav-item>a.nav-link data-toggle="pill" href="#对应ID"
    内容:div.tab-content>div.tab-pane

    image.png
  2. 导航栏(重点)

    父级 div 的 navbar-expand-* 与子级 ul.navbar-nav 组成后选择器,对ul的主轴方向进行了控制
    比如: navbar-expand-md当屏幕 w >= 768px ul 的主轴方向变为row, 所有li横向显示。当屏幕 w<768px ul的主轴方向为默认的column所有li纵向显示
    imagedf0931185fe16ec9.png
    image9ab506fa2a7d96a8.png

    div.navbar.navbar-expand-* 默认弹性,主轴为 x (* 代表: sm/md/lg 适配)
    ul.navbar-nav 默认弹性,主轴为 y
    li.nav-item
    a.nav-link

  3. 折叠
    btn data-toggle="collapse" data-target="#ID"
    div.collapse display:none隐藏
    imagec2b7937f22c5902d.png
    image253b23f47ea9966c.png

  4. 卡片
    div.card> div.card-header/div.card-body/div.card-footer
    如果在 card 中 a 标签, 那么 a 可以使用 card 提供的样式 .card-link 对于一个 card 来说除了 div.card 其他都可以不写
    image0eff258d9d966b84.png
    image31c17078bcf0b423.png

  5. 手风琴(折叠+卡片)
    imageb949aa8b91617768.png
    注意:
    ① .collapse 不能和折叠的 .card-body 在一个div上,不然在隐藏和显示时会产生卡顿
    解决: div.collapse>div.card-body

    ② 多个折叠部分可以同时打开
    解决: 在最外层,添加 div#parent 所有的卡片都在 这个div 中在所有的div.collapse 上添加事件 data-parent="#parent" 这样就可以保证在 div#parent 中只能同时打开一个 card-body
    imaged2c859a84a54935f.png

  6. 折叠导航栏
    div.navbar.navbar-expand-*.bg-dark.navbar-dark: .navbar-expand-* | .navbar-dark
    内部 3 部分
    a.navbar-brand 不隐藏,显示在最前面的菜单
    button.navbar-toggler>span.navbar-toggler-icon 三条线的折叠按钮
    div.collapse.narbar-collapse: .navbar-collapse 折叠的菜单项
    >ul.navbar-nav>li.nav-item>a.nav-link
    image1b3535d924f568d0.png

    · 功能解释:
    navbar-dark: 对最外层 div 没有任何的影响,告诉内部的 .navbar-brand 和 .navbar-nav 和 .navbar-toggler-icon 导航栏是深色的 “你们要用浅色”
    .navbar-expand-*和.navbar-collapse配合: .collapse 作用 display: none;
    .navbar-expand-* .navbar-collapse {display: flex}
    所以只要屏幕符合 * 的要求,这里的 Div 就是显示状态,屏幕不符合 * 状态,这个选择器失效,Div按照 .collapse 的样式隐藏
    * 决定了在什么屏幕下显示,什么屏幕下隐藏
    imaged2fefd1eaf777523.png

  7. 媒体对象

    <h1>媒体对象</h1>
    <div class="media border p-3">
        <div class="imgAlt"></div>
        <div class="media-body ml-2">
            <h4>专辑: XXX</h4>
            <p>XXXXXX</p>
        </div>
    </div>
    
    image.png
  8. 焦点轮播图
    ① 图片轮播
    div.carousel > div.carousel-inner > div.carousel-item > img.w-100
    div.carousel : 相对定位
    div.carousel-inner : 相对定位,宽度100%,溢出隐藏
    div.carousel-item : display: none; 加 .active 类名显示
    img.w-100 : 如果宽度不是100% 右边的 箭头就会 很难受

    给 div.carousel 添加 data-ride=“carousel” 轮播图就可以自己播了
    image778c23dc75a23532.png

    ② 左右箭头
    div.carousel > a.carousel-control-prev/next data-slide="prev/next" href="#ID"

    由于 Boot 默认给的 箭头不符合需求样式需要重写

        .carousel-control-prev,
        .carousel-control-next {
            width: 4%;
            height: 20%;
            top: 50%;
            transform: translateY(-50%);
            border-radius: 0.5rem;
            background-color: #AAAAAA;
        }
    
    

    ③ 轮播指示器
    ul.carousel-indicators > li.active(激活)
    ul.carousel-indicators: 设置了 li 的宽高,默认的宽高不符合需求,需要重写

    .carousel-indicators li {
        width: 1rem;
        height: 1rem;
        background-color: #FFFFFF;
        margin-left: 0.4rem;
        margin-right: 0.4rem;
        border-radius: 50%;
        cursor: pointer;
    }
    .carousel-indicators .active {
        background-color: #0aa1ed;
    }
    

    事件: li data-slide="图片的 index" 从 0 开始 / data-target="#ID"

    <div id="lun" data-ride="carousel" class="carousel">
        <div class="carousel-inner">
            <div class="carousel-item active">
                <img class="w-100" src="./img/banner1.png" alt="">
            </div>
            <div class="carousel-item">
                <img class="w-100" src="./img/banner2.png" alt="">
            </div>
            <div class="carousel-item">
                <img class="w-100" src="./img/banner3.png" alt="">
            </div>
            <div class="carousel-item">
                <img class="w-100" src="./img/banner4.png" alt="">
            </div>
        </div>
    
        <a class="carousel-control-prev" data-slide="prev" href="#lun">
            <span class="carousel-control-prev-icon"></span>
        </a>
        <a class="carousel-control-next" data-slide="next" href="#lun">
            <span class="carousel-control-next-icon"></span>
        </a>
    
        <ul class="carousel-indicators">
            <li data-slide-to="0" data-target="#lun" class="active"></li>
            <li data-slide-to="1" data-target="#lun"></li>
            <li data-slide-to="2" data-target="#lun"></li>
            <li data-slide-to="3" data-target="#lun"></li>
        </ul>
    </div>
    
  9. 模态框

    <div class="modal">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header"></div>
                <div class="modal-body"></div>
                <div class="modal-footer"></div>
            </div>
        </div>
    </div>
    

    image5087e36775442777.png

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 07:59:01  更:2022-05-08 08:00:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 21:55:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码