# 現成組件 (Components) ###### tags: `NKFW 網頁設計入門` # 前言 與其一個一個組件慢慢學,不如直接從project當中學習 # 使用現成組件需要注意的事情 :::info 怎麼我直接複製之後看起來壞掉了?你需要注意有以下幾點可能的原因: * 圖片路徑:你需要寫上正確的圖片路徑 * inline-style:官網會在範例上加上inline-style(為了展示用)。 ::: # navbar :::info 一個完整的nav看起來相當龐大,但是我們可以分成好幾個部分來看: * `navbar-brand`:可以放icon之類的地方 * `navbar-toggler`:導覽列的Hamburger(三條線的icon),控制nav內容展開跟收合 * `navbar-collapse`:包住navbar-nav,被`navbar-toggler`控制 * navbar-nav:nav的內容,本身是一個`ul` * nav-item:每一個項目都是一個`li` * link * dropdown-toggle:控制dropdown-menu的收合&展開 * dropdown-menu * search:搜尋列:本身是一個表單。 ::: ```xml= <nav class="navbar navbar-expand-lg bg-body-tertiary"> <div class="container-fluid"> <a class="navbar-brand" href="#">Navbar</a> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav me-auto mb-2 mb-lg-0"> <li class="nav-item"> <a class="nav-link active" aria-current="page" href="#">Home</a> </li> <li class="nav-item"> <a class="nav-link" href="#">Link</a> </li> <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"> Dropdown </a> <ul class="dropdown-menu"> <li><a class="dropdown-item" href="#">Action</a></li> <li><a class="dropdown-item" href="#">Another action</a></li> <li><hr class="dropdown-divider"></li> <li><a class="dropdown-item" href="#">Something else here</a></li> </ul> </li> <li class="nav-item"> <a class="nav-link disabled">Disabled</a> </li> </ul> <form class="d-flex" role="search"> <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search"> <button class="btn btn-outline-success" type="submit">Search</button> </form> </div> </div> </nav> ``` ![](https://hackmd.io/_uploads/BJ9VBg74h.png) ![](https://hackmd.io/_uploads/r1HXSx7Nh.png) # Carousel :::info Carousel是一個幻燈片,基本包含以下的部分: * carousel-inner:包住carousel-item的 區塊。 * carousel-item:每一個item裡面都放一張圖片,代表幻燈片的圖片。 * carousel-control-prev:上一頁幻燈片的按鈕。 * carousel-control-next:下一頁幻燈片的按鈕。 ::: ```xml= <div id="carouselExample" class="carousel slide"> <div class="carousel-inner"> <div class="carousel-item active"> <img src="..." class="d-block w-100" alt="..."> </div> <div class="carousel-item"> <img src="..." class="d-block w-100" alt="..."> </div> <div class="carousel-item"> <img src="..." class="d-block w-100" alt="..."> </div> </div> <button class="carousel-control-prev" type="button" data-bs-target="#carouselExample" data-bs-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="visually-hidden">Previous</span> </button> <button class="carousel-control-next" type="button" data-bs-target="#carouselExample" data-bs-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="visually-hidden">Next</span> </button> </div> ``` ![](https://hackmd.io/_uploads/SJA4Ilm4n.png) # Card :::info card是一張卡片,裡面包含以下的元素: * card-img * card-body:裡面有`card-title`, `card-text` * card-title:卡片的標題 * card-text:卡片的文字 ::: ![](https://hackmd.io/_uploads/r19YvlXEn.png) ```xml= <div class="card" style="width: 18rem;"> <img src="..." class="card-img-top" alt="..."> <div class="card-body"> <h5 class="card-title">Card title</h5> <p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p> </div> </div> ``` # 做一個個人網站 :::info 你可以... * 在網頁上方放一個導覽列 * 用卡片組件、列表介紹自己 * 放一個幻燈片區塊 ::: # 做一個電商網站吧 :::info 做一個電商網站的基本元素有什麼: * 導覽列 * 購物商品 * 分頁導覽 * 按下商品購買鍵會彈出提示視窗 * 其他... ::: ### 做一個系網 :::info 系網可能會用到的元素: * 導覽列:navbar * 幻燈片-大圖:Carousel * 廣告、內容區塊:Card 你可能有一天就會用到這些東西,幫你們系/社團/學校/甚至是公司,架一個網站! :::