Hướng dẫn tạo Fixed Menu

DEMO

Fixed menu có thể hiểu là một menu cố định tại một vị trí của trang, các fixed chúng ta thường gặp là fixed top menu, fixed bottom menu, fixed right menu, fixed left menu thể hiện vị trí mà các menu được cố định.

Trong bài này mình sẽ hướng dẫn các bạn tạo ra một menu cố định.

1. Xây dựng giao diện hiển thị

Bước đầu tiên là xây dựng giao diện, các bạn tạo file index.html sau đó tạo phần nội dung trang bằng đoạn mã dưới đây:

Code RUN
<div class="container">
    <div class="navbar">
        <a href="#home">Home</a>
        <a href="#news">News</a>
        <a href="#contact">Contact</a>
        <a href="#about">About</a>
    </div>
    
    <div class="main">
        <h1>Freetuts.net hướng dẫn tạo Fixed Top Menu</h1>
        <p> PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập</p>
        <p> trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các</p>
        <p> ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. </p>
        <p> Nó rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. </p>
        <p> Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, </p>
        <p> cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm </p>
        <p> tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng</p>
        <p> trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới.</p>

        <p> Thẻ <?php và thẻ ?> sẽ đánh đấu sự bắt đầu và sự kết thúc của phần </p>
        <p> mã PHP qua đó máy chủ biết để xử lý và dịch mã cho đúng. </p>
        <p> Đây là một điểm khá tiện lợi của PHP giúp cho việc viết mã PHP </p>
        <p> trở nên khá trực quan và dễ dàng trong việc xây dựng phần </p>
        <p> giao diện ứng dụng HTTP.
        <p> Ngôn ngữ, các thư viện, tài liệu gốc của PHP được xây dựng </p>
        <p> bởi cộng đồng và có sự đóng góp rất lớn của Zend Inc., </p>
        <p> công ty do các nhà phát triển cốt lõi của PHP lập nên nhằm tạo ra </p>
        <p> một môi trường chuyên nghiệp để đưa PHP phát triển ở quy mô doanh nghiệp. </p>
    </div>
</div>

Đều là các mã nguồn khá đơn giản phải không nào, cùng chuyển sang bước tiếp theo nhé!

2. Thêm CSS để định dạng các thành phần

Trong bước này chúng ta sẽ định dạng các thành phần có trong trang bằng CSS, các bạn thêm đoạn mã CSS dưới đây và trong thẻ style:

Code RUN
.container {
    width:50%;
    margin: auto;
}

.navbar {
  overflow: hidden;
  background-color: #333;
  position: fixed;
  top: 0;
  width: 50%;
}

.navbar a {
  float: left;
  display: block;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
}

.main {
  padding: 16px;
  margin-top: 30px;
  height: 1500px; 
}

Trong đoạn mã trên, các bạn cần lưu ý giúp mình hai điểm quan trọng:

  • Trong phần định dạng cho class navbar, mình sử dụng thuộc tính top: 0; để thiết lập vị trí cho phần menu nằm phía trên cùng của trang, tiếp đến mình sử dụng thuộc tính position: fixed; để cố định phần menu ở vị trí đó khi cuộn chuột.
  • Trong phần định dạng cho class main mình sử dụng thuộc tính height: 1500px; mục đích là để mở ra thanh scroll để các bạn thấy rõ được hiệu ứng của fixed menu khi cuộn chuột.

Có một lưu ý khi sử dụng fixed top menu là thanh menu sẽ có thể đè lên các phần nội dung của trang, để khắc phục điều này các bạn sử dụng thuộc tính margin-top cho phần nội dung.

3. Lời kết

Vậy mình đã cũng các bạn xây dựng xong một fixed top menu đơn giản, các bạn cũng có thể áp dụng để xây dựng những fixed menu ở các vị trí các bạn mong muốn. Qua bài này thì mình hi vọng các bạn đã có thêm sự lựa chọn trong việc hiển thị các menu trên website của mình. Hẹn gặp lại các bạn trong các bài viết tiếp theo trên freetuts.net.

Tham khảo: w3schools.com

Nguồn: freetuts.net

KHÓA HỌC ĐANG GIẢM GIÁ

FEDU - 30 – HTML CSS cơ bản

(Giảng viên: Nguyễn Đức Việt)

XEM
FEDU - 25 – Thiết kế hiệu ứng bằng Javascript và illustrator

(Giảng viên: NGUYỄN ĐỨC VIỆT )

XEM
FEDU - 03: Thành thạo lập trình jquery qua 20 bài tập thực hành

(Giảng viên: Nguyễn Đức Việt)

XEM
FEDU - 22 – Học tất tần tật về Javascript từ đầu

(Giảng viên: Nguyễn Đức Việt)

XEM
FEDU - 19: Học lập trình Back-end PHP/MySql/Jquery nâng cao

(Giảng viên: Nguyễn Đức Việt)

XEM