Добавить текстовую подсказку к кнопке переключения Navbar Toggle на мобильном экране

Некоторые тесты показали, что кнопка "гамбургер" для разворачивающихся меню на мобильных устройствах является загадкой для пользователей, и я хотел бы добавить слово "Меню" рядом с моей кнопкой меню "Bootstrap", как показано в мобильном режиме.

Для дальнейшего чтения ознакомьтесь с этой статьей: "The Hamburger is Bad for You": http://mor10.com/hamburger-bad/

Вот базовый код Bootstrap:

<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
    <!-- Represents navbar collapsed menu on smaller screens -->
  <span class="sr-only">Toggle navigation</span>
    <!-- 3 horizontal lines on small screen nav button -->
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
</button>

Итак, я хотел бы добавить слово "МЕНЮ" рядом со значком на мобильном телефоне. Я сделал макет того, о чем я говорю, но у меня нет достаточной репутации на SO, чтобы опубликовать его.

Посмотрите здесь: https://imgur.com/M7hGS7F

  • FYI - это макет, фактическая страница Bootstrap не содержит текст МЕНЮ, иначе я просто посмотрю на источник.

Если вы можете предоставить информацию о том, как включить, это как (A) просто текст рядом с кнопкой и (B) как часть кнопки, чтобы можно было щелкнуть, что было бы потрясающе. Заранее благодарим за помощь в этом решении!

Ответ 1

Думаю, было бы лучше использовать font-size.

просто включите ссылки на fontawesome (см. http://fortawesome.github.io/Font-Awesome/get-started/), а затем используйте значок баров (http://fortawesome.github.io/Font-Awesome/icon/bars/)

Итак, ваш код будет выглядеть sth. например:

<head>
   [...]
   <link href="//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
   [...]
</head>
<body>

[...]

<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
    <!-- Represents navbar collapsed menu on smaller screens -->
    <span class="sr-only">Toggle navigation</span>
    <i class="fa fa-bars" aria-hidden="true"></i> Menu
</button>

Если значок Bars должен быть больше, просто добавьте fa-lg или любой другой класс, который можно найти в http://fortawesome.github.io/Font-Awesome/examples/ к значку

Ответ 2

Еще одно решение css:

.navbar-toggle:before {
    content:"Menu";
    left:-50px;
    top:4px;
    position:absolute;
    width:50px;
}

Ответ 3

HTML

<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
    <span class="button-label">Menu</span>
    <div class="button-bars">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
    </div>
</button>

CSS

.navbar-toggle .button-label {
    display: inline-block;
    float: left;
    font-weight: bold;
    line-height: 14px;
    padding-right: 10px;
}
.button-bars {
    display: inline-block;
    float: left;
}

Ответ 4

У меня была такая же проблема, но мне не хотелось добавлять шрифтов.

Вот мое решение (HTML и LESS):

<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
    <span class="button-label">Meny</span>
    <div class="button-hamburger">
       <span class="icon-bar"></span>
       <span class="icon-bar"></span>
       <span class="icon-bar"></span>
    </div>
</button>

LESS:

button {

    .button-label {
        display: table-cell;
        vertical-align: middle;
        font-weight: 700;
        padding-right: 3px;
    }

    .button-hamburger {
        display: table-cell;
        padding: 8px;
        border: 1px solid #333;
        -moz-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;

        .icon-bar {
            background: #333;
        }
    }
}
.navbar-toggle {
    border: none;
    padding: 0;
}

ПРЕДУПРЕЖДЕНИЕ: Я тестировал это только в последних версиях Chrome и IE 11. У меня больше нет настроек atm.