Thanh điều hướng bootstrap không chiếm toàn bộ chiều rộng

Ngay trong khoảng thời gian tôi đang phát triển mã cho Thanh điều hướng siêu đơn giản mà tôi đã viết cách đây một thời gian, một người bạn đã đến gặp tôi với một vấn đề thú vị. Anh ấy cần một thanh điều hướng ngang giống như thanh tôi đang tạo, với những thay đổi sau

  1. Nền của thanh điều hướng phải kéo dài toàn bộ chiều rộng của màn hình [không chỉ chiều rộng của khu vực nội dung được căn giữa] mà còn
  2. Bản thân các thành phần điều hướng vẫn phải được căn giữa trên khu vực nội dung

Bản phác thảo dưới đây phác thảo khái niệm thiết kế cơ bản

CSSDeck khuyên dùng Hello Ivy để tự động hóa miễn phí quy trình làm việc và quản lý dự án của bạn. Tìm hiểu thêm

About Us

  • Our Products
  • FAQs
  • Contact
  • Login
  • Nếu bạn đã quen thuộc với mã cho Thanh điều hướng siêu đơn giản, bạn sẽ thấy nó gần như giống hệt nhau, ngoại trừ việc tôi đã bọc thẻ ul trong div và chuyển ID “nav” sang div đó

    CSSDeck khuyên dùng Hello Ivy để tự động hóa miễn phí quy trình làm việc và quản lý dự án của bạn. Tìm hiểu thêm

    Mã điều hướng này phải được đặt bên ngoài vùng chứa nội dung được căn giữa của bạn để cho phép chúng tôi kéo dài mã này ra toàn bộ chiều rộng của cửa sổ trình duyệt trong CSS của chúng tôi

    Nói chung, tôi nghĩ rằng đây là một lượng mã có thể chấp nhận được cho một thanh điều hướng

    CSS

    Một lần nữa, tất cả những gì tôi đã làm ở đây là lấy CSS của thanh điều hướng trước đó và sửa đổi nó một chút. Kết quả dưới đây

    #nav {
    	width: 100%;
    	float: left;
    	margin: 0 0 1em 0;
    	padding: 0;
    	background-color: #f2f2f2;
    	border-bottom: 1px solid #ccc;  }
    #nav ul {
    	list-style: none;
    	width: 800px;
    	margin: 0 auto;
    	padding: 0; }
    #nav li {
    	float: left; }
    #nav li a {
    	display: block;
    	padding: 8px 15px;
    	text-decoration: none;
    	font-weight: bold;
    	color: #069;
    	border-right: 1px solid #ccc; }
    #nav li:first-child a {
    	border-left: 1px solid #ccc; }
    #nav li a:hover {
    	color: #c00;
    	background-color: #fff; }

    Div #nav của chúng tôi được kéo dài tới 100% cửa sổ trình duyệt và trôi sang trái. “phao. left” có vẻ hơi lạ, bởi vì chúng tôi không muốn bất cứ điều gì bao quanh thanh điều hướng của chúng tôi

    Đây là một mẹo nhỏ tận dụng cách hoạt động của float. Nếu một vùng chứa không chứa gì ngoài phần tử nổi, thì vùng chứa đó sẽ thu gọn xuống độ cao bằng 0, vì phần tử nổi sẽ đưa nó ra khỏi luồng tài liệu thông thường. Đó là, trừ khi container cũng được thả nổi. Sau đó, đột nhiên, thùng chứa của chúng tôi chỉ thu gọn lại bằng kích thước của phao chứa

    Tại sao nó lại quan trọng? . Nếu #nav không nổi, nó sẽ thu gọn về độ cao bằng 0, làm cho nền và đường viền của chúng ta trở nên vô hình

    Tiếp theo, chúng tôi đã cung cấp cho “#nav ul” một chiều rộng cố định và sử dụng thủ thuật căn lề tự động để căn giữa nó. Chiều rộng ở đây là rất quan trọng. bạn muốn nó có cùng chiều rộng với vùng nội dung được căn giữa của bạn. Trong ví dụ này, đó là 800 pixel

    Tôi đang sử dụng một lớp giả để tạo hiệu ứng thú vị ở đây. Các ". lớp giả con đầu tiên” áp dụng cho bất kỳ phần tử nào là phần tử con đầu tiên trong phần tử cha của nó. Trong trường hợp của chúng tôi, quy tắc này là tìm chữ “li” đầu tiên trong chữ “ul” gốc của chúng tôi. Sau đó, chúng tôi sẽ áp dụng đường viền cho bên trái của thẻ neo bên trong. Không có nó, phần tử đầu tiên của chúng ta sẽ không có đường viền bên trái như những phần tử khác dường như có. Mặc dù về mặt kỹ thuật, chúng tôi có thể làm điều đó với một lớp hoặc ID trên phần tử đầu tiên, nhưng tôi nghĩ giải pháp này thanh lịch hơn một chút

    Phần còn lại của CSS giống với phần trong thanh điều hướng ngang đơn giản của chúng tôi và chủ yếu là trình bày. Bạn có thể tùy chỉnh màu sắc, phần đệm, di chuột và mọi thứ khác để biến thanh điều hướng thành của riêng bạn

    Bạn có thể thấy mã này đang hoạt động ở đây. Hy vọng rằng những người khác sẽ thấy giải pháp này hữu ích như bạn tôi đã làm

    Trong Bootstrap 4, NavBar là một thành phần thiết yếu cho mục đích menu. NavBar chứa rất nhiều mục như văn bản, văn bản liên kết, vô hiệu hóa liên kết, nút thả xuống, biểu mẫu, v.v. Để làm cho các mục con thả xuống thành toàn chiều rộng có thể được thực hiện bằng cách sử dụng thuộc tính CSS hoặc bằng cách sử dụng các tiện ích mặc định của Bootstrap 4. Các cách tiếp cận sau đây sẽ giải thích rõ ràng

    Cách tiếp cận 1

    1. Trong Bootstrap 4, có thể thực hiện thả xuống toàn bộ chiều rộng trong Thanh điều hướng bằng cách thêm các thuộc tính CSS bên trong hoặc bên ngoài dựa trên các tiện ích. Chỉ tập trung vào danh sách thả xuống lớp và menu thả xuống
    2. Đầu tiên, tiêu điểm thả xuống là lớp cha của menu thả xuống, sau đó đặt nó ở vị trí tĩnh như sau




      .dropdown {

          position:static !important;

      ________số 8_______

    3. Bây giờ, đặt lề trên cùng của menu thả xuống dưới dạng pixel bằng 0 và thêm chiều rộng thành 100%
    4. Sau đó thêm bóng hộp để làm nổi bật menu thả xuống [mục đích trang trí] như sau




      style3

          style5

          style7

          style9

      ________số 8_______

    5. Chúng ta cũng có thể sử dụng các thuộc tính CSS thông qua phương thức nội tuyến

    ví dụ 1. Ví dụ dưới đây minh họa cách tạo danh sách thả xuống có chiều rộng đầy đủ của Bootstrap 4 trong Thanh điều hướng bằng các thuộc tính CSS




    >4

    7>8>9>

    .dropdown {1

        8position:static !important;1_______4_______

        8

    }1>

        8

    }8>

        

        8

        

        8

    >0>

        

        

    style00_______5_______

    style02______3_______03

    style00}

    style06

    style00style3

    style02______3_______5

    style02______3_______12

    style02______3_______14

    style00}

        

    style02_______2__________style54____3_______55style54>

    style02_______2_______3_______60>

    style02_______2_______3_______60>

    style02_______2_______style68 style69

    style70style71

    style72_______3_______4_______8style75>

    style778style82 position:static !important;9>8style85>

    style878

    style92

    style93_______3_______94>8_______3_______96 style97>8style96

    style93_______3_______31>8>03 >04>8>06>07

    >08>09

    style77

    style7716 style31>8>19

    style70>21>8>23 >24>8>26

    style70>28>8>30

    style70>32>8>34

    style70>36>8>38

    style70>40>8>42

    style70style4_______8>46>

    style8750 style31_______4_______8>53>54>50>

    style7716>

    .dropdown {1

    style778>67

    >68>69>8>34>

    .dropdown {1

    style8776 style31_______4_______8>79>

    >81

    style70>83

    style7086 style31_______4_______8>89>

    >918>96

    >97_______7_______9>8style85 >69>8.dropdown {03

    >97_______5_______05>8>23 >24>8.dropdown {10

    >97_______5_______12>8.dropdown {14

    >97_______4_______36>8>38>

    .dropdown {20.dropdown {21

    >91

    .dropdown {26

    >91_______5_______28

    >918.dropdown {34

    .dropdown {35.dropdown {36>8.dropdown {03>

    .dropdown {408style85>

    .dropdown {50_______5_______51

    .dropdown {40

    .dropdown {408style85>

    .dropdown {50_______5_______67

    .dropdown {40

    .dropdown {4054style30>

    .dropdown {408style85>

    .dropdown {50_______5_______92

    .dropdown {40

    >91

    style70_______9_______>86>

    style7086 style31_______4_______8>89>

    >918>96

    >97_______7_______9>8style85 >69>8.dropdown {03

    >97_______5_______05>8>23

    >97_______4_______24>8.dropdown {10

    >97_______5_______12>8.dropdown {14

    >97_______4_______36>8>38>

    .dropdown {20    43

    >91

    .dropdown {26

    >91_______5_______28

    >918.dropdown {34

    .dropdown {35.dropdown {36>8.dropdown {03

    .dropdown {35style4_______8    64>

    .dropdown {408style85>

    .dropdown {50_______5_______51

    .dropdown {40

    .dropdown {408style85>

    .dropdown {50_______5_______67

    .dropdown {40

    .dropdown {4054style30>

    .dropdown {408style85>

    .dropdown {50_______5_______92

    .dropdown {40

    >91

    style70_______9_______>86>

    style8776>

    >68

    style87position:static !important;37

    style87

    .dropdown {1

    style708position:static !important;51

    >97_______4_______21>8position:static !important;55 position:static !important;56>8position:static !important;58

    >97_______4_______40>8position:static !important;58>

    style7016 style31>8position:static !important;69

    .dropdown {40>21>8position:static !important;73position:static !important;74>16>

    style87

    style77

    style02_______9_______style68>

    style00

        

    .dropdown {1

    đầu ra

    Cách tiếp cận 2

    1. Trong Bootstrap 4, có thể thực hiện thả xuống toàn bộ chiều rộng trong Thanh điều hướng bằng cách sử dụng tiện ích Bootstrap 4
    2. Tương tự như cách tiếp cận 1, chỉ tập trung vào danh sách thả xuống lớp và menu thả xuống
    3. Thêm class position-static cùng với dropdown class, là class cha của dropdown-menu như sau




      86 style31>8}09>

    4. Bây giờ, thêm lớp w-100, mt-0 cùng với lớp menu thả xuống như sau




      8}15

      .dropdown {36>8.dropdown {03>

    ví dụ 2. Ví dụ dưới đây minh họa cách tạo danh sách thả xuống có chiều rộng đầy đủ của Bootstrap 4 trong Thanh điều hướng bằng tiện ích Bootstrap 4




    >4

    7>8>9>

    .dropdown {1

        8position:static !important;1_______4_______

        8

    }1>

        8

    }8>

        

        8

        

        8

    >0>

        

    style02_______2__________style54____3_______55style54>

    style02_______2_______3_______60>

    style02_______2_______3_______60>

    style02_______2_______style68 style69

    style70

    style778style82 position:static !important;9>8style85>

    style878

    style92

    style93_______3_______94>8_______3_______96 style97>8style96

    style93_______3_______31>8>03 >04>8>06>07

    >08>09

    style77

    style7716 style31>8>19

    style70>21>8>23

    style70>24>8>26

    style70>28>8>30

    style70>32>8>34

    style70>36>8>38

    style70>40>8>42

    style70style4_______8>46>

    style8750 style31_______4_______8>53>54>50>

    style7716>

    .dropdown {1

    style778>67

    >68>69>8>34>

    .dropdown {1

    style8776 style31_______4_______8>79>

    >81

    style70>83

    style7086 style31_______4_______8}09>

    >918>96

    >97_______7_______9>8style85 >69>8.dropdown {03

    >97_______5_______05>8>23 >24>8.dropdown {10

    >97_______5_______12>8.dropdown {14

    >97_______4_______36>8>38>

    .dropdown {20.dropdown {21

    >91

    .dropdown {26

    >91_______5_______28

    >9104

    >05>06

    .dropdown {35.dropdown {36>8.dropdown {03>

    .dropdown {408_______5_______45 position:static !important;9>8style85>21style79>

    .dropdown {408style85>

    .dropdown {50_______4_______35

    .dropdown {40

    .dropdown {4054style30>

    .dropdown {50_______2__________style79 style31_______4_______8.dropdown {45 position:static !important;9>8style85>

    Làm cách nào để tạo thanh điều hướng Bootstrap có chiều rộng đầy đủ?

    Trong Bootstrap 4, có thể thực hiện thả xuống toàn bộ chiều rộng trong Thanh điều hướng bằng cách thêm các thuộc tính CSS bên trong hoặc bên ngoài dựa trên sự tiện lợi. Chỉ tập trung vào danh sách thả xuống lớp và menu thả xuống. Bây giờ, đặt lề trên của menu thả xuống thành 0 pixel và thêm chiều rộng thành 100% . Chúng ta cũng có thể sử dụng các thuộc tính CSS thông qua phương thức nội tuyến.

    Làm cách nào để giảm chiều rộng của thanh điều hướng?

    Chiều cao của thanh điều hướng trong Bootstrap 4 đến từ phần đệm trên các thành phần liên kết của nó và cũng từ phần đệm trên thanh điều hướng chính. Để giảm chiều cao, bạn cần xóa phần đệm trên cả hai . Lớp này đặt padding-top và padding-bottom thành 0. Tiếp theo đặt padding-top và padding-bottom của lớp thanh điều hướng thành 0.

    Chủ Đề