HTMLとCSSでdisplay noneの使い方を現役エンジニアが解説【初心者向け】

初心者向けにHTMLとCSSでdisplay noneの使い方について解説しています。display noneは要素を非表示にするときに使用されるものです。基本の書き方とvisibilityとの動作の違いをサンプルコードで見てみましょう。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

HTMLとCSSでdisplay noneの使い方について、テックアカデミーのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

目次

 

HTML/CSSのdisplay noneとは

 

田島悠介

今回は、要素を画面から消すことができる「display none」の使い方を見ていこう!

大石ゆかり

はい、お願いします!

田島悠介

「display none」が使われている例から見てみよう。今見ているページをパソコンとスマホで見比べるとどうかな?

 

パソコンの表示

パソコン画面(ヘッダーメニューとSNSボタンが表示されている)

 

スマホの表示

パソコン画面(ヘッダーメニューとSNSボタンのいくつかが表示されていない)

大石ゆかり

同じページなのにスマホでは一番上のメニュー項目が消えて、SNSのボタンの数も減っていますね!スマホとパソコンで別々のHTMLを作っているんですか?

田島悠介

HTMLは同じなんだよ。試しにパソコンのブラウザ(Webページを表示しているアプリ)画面の幅を変えてもらえば、スマホとパソコンの表示が切り替わるのがわかるね。

大石ゆかり

ほんとですね!ブラウザの幅を変えるとメニューやボタンが消えたり出たりします。

田島悠介

このように「display none」を使うとスマホとパソコンでHTMLの要素を消したり出したりすることができるんだ。

今見てもらったように、画面の幅によって表示・非表示を切り替えることができるメディアクエリとセットで使うと効果を発揮できるんだよ。

詳しくはメディアクエリについて解説した記事があるよ。

 

[PR] HTML/CSSで挫折しない学習方法を動画で公開中

display noneで要素を非表示にする方法

HTMLの一部分の要素を非表示にする、つまり画像やメニューなどの要素を表示したり消したりする場合、CSSでdisplay(ディスプレイ、表示)プロパティを使います。

CSSのdisplayプロパティの値をnone(ノン、ない)とすることでHTMLの画像などの要素が非表示になります。

たとえば、パソコンで表示している画像がスマホでは見えづらい場合は、スマホでの表示を「display none」にすることによって画像を非表示にすることができます。

このように「display none」を使用することで、パソコンで表示させるがスマホでは表示させないといった、レスポンシブWebデザインに対応させることできます。

 

また、jQueryなどで表示と非表示を切り替える場合にもdisplayプロパティを使用できます。

「display none」を使うとHTMLの記述を変更せずにCSSで非表示にしているため、再度表示させる場合でも簡単に切り替えができるでしょう。

 

 

display noneを試そう

ボックスが縦に3つ並ぶように記述し、display noneで2つ目にある青のボックスを非表示にしました。

display none

visibilityとdisplayの違い

displayプロパティと似たように非表示にできるプロパティとしてvisibility(ビィジビリティ、目に見える状態)プロパティがあります。

visibilityプロパティをhiddenとすることで、要素の存在を残して表示だけ隠す(つまり透明にする)ことができます。

displayプロパティによって要素が完全に存在しなくなる(HTMLにその要素が記述されていないのと同じ)ような非表示にできることと比べて、visibilityプロパティは要素が透明になるのと同じ表示になります。

 

visibility hidden


つまり、visibilityプロパティは要素が透明になるだけで他の要素の配置に影響は与えませんが、「display none」を使うと要素がなくなって次の要素によって空いた場所が詰められるようになります。

 

執筆してくれたメンター

井上祐介(いのうえゆうすけ)

テックアカデミーのメンター。

NEC・Microsoftの認定インストラクター。

学生時代からのプログラミング経験を経て業務で使用するプログラムの開発を行う。

新入社員研修でプログラミング初心者がサーバサイドプログラムを組めるようになるまでの講師を担当した。

プログラム作成初心者がプログラミングを楽しめる講師でありたいというモットーがある。

 

大石ゆかり

HTMLとCSSでdisplay noneの使い方が分かりました。要素の存在を消すのが「display none」で、要素を透明にして消すのが「visibility hidden」なんですね!

田島悠介

その通り!どんな画面の大きさにも対応できる、レスポンシブWebデザインに欠かせないメディアクエリとセットで覚えよう!

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

HTMLを学習中の方へ

これで解説は終了です、お疲れさまでした。

  • つまずかず「効率的に」学びたい
  • 副業や転職後の「現場で使える」知識やスキルを身につけたい

HTMLを学習していて、このように思ったことはありませんか?

テックアカデミーのWebデザインコースでは、第一線で活躍する「プロのWebデザイナー」が教えているので、効率的に実践的なスキルを完全オンラインでしっかり習得できます。

合格率10%の選考を通過した、選ばれたWebデザイナーの手厚いサポートを受けながら、オリジナルのWebサイト制作を完全オンラインでしっかり習得できます。

まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役Webデザイナーから教わること」を実感してみてください。

時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!