【问题标题】:Bootstrap 4 Navbar center align in CSSBootstrap 4导航栏在CSS中居中对齐
【发布时间】:2021-03-04 13:25:09
【问题描述】:

我的 Angular 代码库中有一个 Bootstrap 4 导航栏,我希望它有点居中对齐,这样当我从一个菜单项移动到另一个菜单项时,就没有大的间隙了。

下面有我的 HTML、TS 和 CSS。

我的 HTML:

<nav class = "navbar navbar-expand-md navbar-fixed-top nav-border" role="navigation">
    <ul class="navbar-nav mx-auto" *ngFor="let menu of menus">
        <li class="nav-item dropdown">
            <a class="nav-link" data-toggle="dropdown" data-target="{{menu.heading}}">{{menu.heading}}</a>
            <div class="dropdown-menu" aria-labelledby="{{menu.heading}}">
                <a *ngFor="let option of menu.options" href="{{option.link}}" target="_blank" class="dropdown-item">{{option.name}}</a>
            </div>
        </li>
    </ul>
</nav>

我的 TS:

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-top-menu',
  templateUrl: './top-menu.component.html',
  styleUrls: ['./top-menu.component.css']
})
export class TopMenuComponent implements OnInit {

  menus : any = [
    {
      
        heading: "MENU1",
        options: 
        [
          {name: "GOOGLE",link: "https://google.com/", order: 1},
          {name: "GitHub",link: "https://github.com", order: 2},
        ]
      
    }
  ];
  
  isDropdownOpen: boolean = false;
  constructor() { }

  ngOnInit(): void {
  }

}

我的 CSS:

.navbar{
    padding:0px;
}
.nav-border {
    border-bottom:1px solid #ccc;
}
li { cursor: pointer; }

li:hover{
    background-color: black;
}

a {
    color: black;
}

.navbar-nav {
    padding: .9rem 0 0;
}

.nav-link:hover {color:white;}

.widthd{
    width: 100%;
}

我的屏幕:

现在菜单分散得很远,我希望它们离屏幕的中心更近一点。

【问题讨论】:

    标签: html css angular bootstrap-4 navbar


    【解决方案1】:

    你可以试试这个:

    <nav class = "navbar navbar-expand-md navbar-fixed-top nav-border" role="navigation">
      <div class="container"
        <ul class="navbar-nav mx-auto" *ngFor="let menu of menus">
            <li class="nav-item dropdown">
                <a class="nav-link" data-toggle="dropdown" data-target="{{menu.heading}}">{{menu.heading}}</a>
                <div class="dropdown-menu" aria-labelledby="{{menu.heading}}">
                    <a *ngFor="let option of menu.options" href="{{option.link}}" target="_blank" class="dropdown-item">{{option.name}}</a>
                </div>
            </li>
        </ul>
      </div>
    </nav>
    

    解决方案是将&lt;div class="container" 包裹在&lt;ul&gt;&lt;/ul&gt; 上。或者如果你想自定义它更居中,你可以像这样添加CSS:

    .container-custom {
      width: 70%
    }
    

    然后你可以把container类改成container-custom

    【讨论】:

    • 是的,这很有效,而且看起来也符合我的要求!谢谢你:D
    猜你喜欢
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    • 2020-02-21
    • 2018-08-12
    • 1970-01-01
    • 2019-05-25
    • 2018-07-14
    • 2016-06-10
    相关资源
    最近更新 更多