質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

1455閲覧

画面幅が狭い時はナビメニューをアイコンのみ表示に切り替えたい

pecchan

総合スコア592

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2020/08/01 09:51

編集2020/08/01 09:54

ヘッダのメニューを画面幅によって切り替えたいです。

スマホなど画面幅が狭いときはアイコンのみ。
タブレットやPCなど画面幅が広い時は、アイコン+文字にしたいです。

「メルカリ」などがそうです。

幅が広い時
イメージ説明

幅が狭い時
イメージ説明

このような事を実現するのはbootstrapだけで可能でしょうか?
色々検索して探しましたが、それらしい情報を見つけられませんでした。

ちなみに現在は、「Font Awesome」にてアイコン+文字でメニューを出力してます。

分かる方教えていただけないでしょうか?

html

1<header class="navbar navbar-fixed-top navbar-inverse" id="header_nav"> 2 <div class="container"> 3 4 <div class="row"> 5 <a id="logo" href="/">アプリ</a> 6 <form action="/items" accept-charset="UTF-8" method="get" id="header_form"> 7 <div class="input-group"> 8 <form action="/items" accept-charset="UTF-8" method="get"><input name="utf8" type="hidden" value="&#x2713;" /> 9 <input value="" class="form-control" placeholder="何かお探しですか?" id="header_text_keyword" type="text" name="search[keyword]" /> 10 <input type="hidden" name="search[paused]" id="search_paused" value="false" /> 11</form> <div class="input-group-btn"> 12 <button class="btn btn-default" type="submit" id="header_search_button"> 13 <i class="glyphicon glyphicon-search"></i> 14 </button> 15 </div> 16 </div> 17 </form> 18 </div> 19 20 <div class="row"> 21 <nav> 22 <ul class="nav navbar-nav navbar-right navbar-dark hoge"> 23 <li> 24 <a href="/categories"> 25 <i class="fa fa-sitemap"></i>カテゴリから探す 26</a> </li> 27 <li> 28 <a href="#"> 29 <i class="fa fa-bell"></i>お知らせ 30</a> </li> 31 <li> 32 <a href="/mypages"> 33 <i class="fa fa-user"></i>マイページ 34</a> </li> 35 36 </ul> 37 </nav> 38 </div> 39 40 </div> 41</header>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

文字部分をspan要素で括ってDisplay propertyで表示を制御するとかでしょうか。

【Display property · Bootstrap】
https://getbootstrap.com/docs/4.0/utilities/display/

HTML

1<div class="d-none d-lg-block">hide on screens smaller than lg</div>

投稿2020/08/01 10:47

kei344

総合スコア69606

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pecchan

2020/08/01 22:56

有難う御座います。 初めて知りました。今勉強してます。 取り急ぎお礼まで。
pecchan

2020/08/02 00:05

アドバイス通り、文字をspanで囲み、 それに対して画面幅が狭い時は、display: none;するようにしました! @media screen and (max-width: 480px){ #header_nav li span{ display: none; } } 有難う御座いました!!
pecchan

2020/08/02 05:06

あ、そういう事だったのですね。 勉強してる内に違う方向へ行ってました^^; こちらの方が更にシンプルですね! 変更します!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問