Bootstrap MT-Auto не выравнивает дно - PullRequest
0 голосов
/ 13 марта 2019

У меня есть боковая панель, как вы можете видеть в HTML.
Я хотел бы выровнять User01 и Выйти элементов внизу.

Я назначил mt-auto класс для элемента ul , но он не работал.
Затем я создал еще одно подразделение с классом mt-auto однако тоже не помогло, есть идеи как выровнять их снизу в Bootstrap?

Лучше ли использовать d-flex в конце элемента выравнивания?

<!DOCTYPE html>
<html lang="en">    
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css"
    integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css"
    integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">
  <link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet">

  <link rel="stylesheet" href="css/style.css">
  <title>Control Panel</title>
</head>

<body>

  <div class="container m-0 p-0">
    <div class="row p-0">
      <div class="sidebar col-lg-2 col-md-3 col-sm-4 d-block bg-secondary px-4 pt-3 bg-dark text-light">        
        <div class="d-flex align-items-start flex-column">
          <a href="index.html" class="navbar-brand text-white mb-3"> <div class="d-inline">Admin Panel</div></a>

          <ul class="navbar-nav text-white">
            <li class="nav-item">
              <a href="index.html" class="nav-link text-white active">Dashboard</a>
            </li>
            <li class="nav-item">
              <a href="tasks.html" class="nav-link text-white">Tasks</a>
            </li>
            <li class="nav-item">
              <a href="categories.html" class="nav-link text-white">Categories</a>
            </li>
            <li class="nav-item">
              <a href="users.html" class="nav-link text-white">Users</a>
            </li>
          </ul>
          <div class="mt-auto">
          <ul class="navbar-nav text-white">
            <li class="nav-item dropdown">
              <a href="" class="nav-link dropdown-toggle text-white" data-toggle="dropdown">
                <i class="fas fa-user"></i> User01
              </a>
              <div class="dropdown-menu">
                <a href="profile.html" class="dropdown-item"><i class="fas fa-user-circle"></i> Profile</a>
                <a href="settings.html" class="dropdown-item"><i class="fas fa-cog"></i> Settings</a>
              </div>
            </li>
            <li class="nav-item">
              <a href="login.html" class="nav-link text-white">
                <i class="fas fa-sign-out-alt"></i> Logout
              </a>
            </li>            
          </ul>
        </div>

        </div>
      </div>
    </div>
  </div>
</body>

</html>

1 Ответ

0 голосов
/ 13 марта 2019

Добавьте position-absolute и h-100 класс в боковую панель, затем измените ваш mt-auto на position-absolute и задайте выравнивание стиля style="bottom: 0". Вы также можете использовать гибкий однонаправленный метод выравнивания для приложения макета.

<!DOCTYPE html>
<html lang="en">    
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css"
    integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css"
    integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">
  <link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet">

  <link rel="stylesheet" href="css/style.css">
  <title>Control Panel</title>
</head>

<body>

  <div class="container m-0 p-0">
    <div class="row p-0">
      <div class="sidebar col-lg-2 col-md-3 col-sm-4 d-block bg-secondary px-4 pt-3 bg-dark text-light position-absolute h-100">        
        <div class="d-flex align-items-start flex-column">
          <a href="index.html" class="navbar-brand text-white mb-3"> <div class="d-inline">Admin Panel</div></a>

          <ul class="navbar-nav text-white">
            <li class="nav-item">
              <a href="index.html" class="nav-link text-white active">Dashboard</a>
            </li>
            <li class="nav-item">
              <a href="tasks.html" class="nav-link text-white">Tasks</a>
            </li>
            <li class="nav-item">
              <a href="categories.html" class="nav-link text-white">Categories</a>
            </li>
            <li class="nav-item">
              <a href="users.html" class="nav-link text-white">Users</a>
            </li>
          </ul>
          
          <div class="position-absolute" style="bottom: 0">
          <ul class="navbar-nav text-white">
            <li class="nav-item dropdown">
              <a href="" class="nav-link dropdown-toggle text-white" data-toggle="dropdown">
                <i class="fas fa-user"></i> User01
              </a>
              <div class="dropdown-menu">
                <a href="profile.html" class="dropdown-item"><i class="fas fa-user-circle"></i> Profile</a>
                <a href="settings.html" class="dropdown-item"><i class="fas fa-cog"></i> Settings</a>
              </div>
            </li>
            <li class="nav-item">
              <a href="login.html" class="nav-link text-white">
                <i class="fas fa-sign-out-alt"></i> Logout
              </a>
            </li>            
          </ul>
        </div>

        </div>
      </div>
    </div>
  </div>
</body>

</html>

# Использование компоновки Flex Align

// CSS
.sidebar {
  height: 100vh;
}
<link href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" rel="stylesheet"/>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet"/>

<div class="container m-0 p-0" >
    <div class="row p-0">
      <div class="sidebar col-lg-2 col-md-3 col-sm-4 bg-secondary px-4 pt-3 bg-dark text-light d-flex flex-column justify-content-between">        
        <div class="d-block">
          <a href="index.html" class="navbar-brand text-white mb-3"> <div class="d-inline">Admin Panel</div></a>

          <ul class="navbar-nav text-white">
            <li class="nav-item">
              <a href="index.html" class="nav-link text-white active">Dashboard</a>
            </li>
            <li class="nav-item">
              <a href="tasks.html" class="nav-link text-white">Tasks</a>
            </li>
            <li class="nav-item">
              <a href="categories.html" class="nav-link text-white">Categories</a>
            </li>
            <li class="nav-item">
              <a href="users.html" class="nav-link text-white">Users</a>
            </li>
          </ul>
          

        </div>
        
        <div class="d-block">
          <ul class="navbar-nav text-white">
            <li class="nav-item dropdown">
              <a href="" class="nav-link dropdown-toggle text-white" data-toggle="dropdown">
                <i class="fas fa-user"></i> User01
              </a>
              <div class="dropdown-menu">
                <a href="profile.html" class="dropdown-item"><i class="fas fa-user-circle"></i> Profile</a>
                <a href="settings.html" class="dropdown-item"><i class="fas fa-cog"></i> Settings</a>
              </div>
            </li>
            <li class="nav-item">
              <a href="login.html" class="nav-link text-white">
                <i class="fas fa-sign-out-alt"></i> Logout
              </a>
            </li>            
          </ul>
        </div>
      </div>
    </div>
  </div>
...