CSSで画像とテキストを横並びにする方法【初心者向け】

初心者向けにCSSで画像とテキストを横並びにする方法について解説しています。画像やテキストを横並びにするためには、display属性にinline-blockやflexを指定します。またfloat属性に値を指定する方法もあります。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

CSSで画像とテキストを横並びにする方法について解説します。

CSSの基礎がわからない場合は、CSSの書き方の記事を先にお読みください。

 

なお本記事は、TechAcademyのWebデザインオンラインブートキャンプのCSSのカリキュラムをもとに執筆しています。

 

田島悠介

今回は、CSSに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

CSSで画像とテキストを横並びにする方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

画像とテキストを横並びにする方法

画像やテキスト要素を横並びにする方法は多種ありますが、

その中で多く使われる方法をご紹介いたします。

display:inline
display:inline-block

上記の要素はブロック要素と使い分けができwidthやheightを指定でき横並びの
レイアウトを実現することが出来ます。

display:table

table要素と同じ振る舞いができ、要素が増えても段落ちせず、自動で調整をいれたい場合に使用します。

最後にfloatを使って画像とテキストを回り込みをさせ横並びのレイアウトにすることも可能です。

実際に書いてみよう

display:inline-blockで要素を横並びにすることが出来ます。divをインラインすることにあまり意味は感じられないと思います。

ですが、横並びのグローバルナビのリストを横並びにすれば、floatを使わないで横並びが再現できます。

HTML

<ul>
  <li><a>navi①</a></li>
  <li><a>navi②</a></li>
  <li><a>navi③</a></li>
  <li><a>navi④</a></li>
  <li><a>navi⑤</a></li>
</ul>

 

CSS

ul {
     overflow: hidden;
     letter-spacing: -.5em;
}
li {
     display: inline-block;
     width: 20%;
     vertical-align: middle;
     letter-spacing: 0;
     text-align: center;
}

 li a {
     margin: -4em 0;
     padding: 5em 1em;
     background: #86c0de;
     display :block;
}
 li a:hover {
     background: #68abcd;
}

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

floatで横並びにする方法

HTML

<div class="container">
  <div class="scroller scroller-left"><i class="glyphicon glyphicon-chevron-left"></i></div>
  <div class="scroller scroller-right"><i class="glyphicon glyphicon-chevron-right"></i></div>
  <div class="wrapper">
    <ul class="nav nav-tabs list" id="myTab">
      <li class="active"><a href="#home">Home</a></li>
      <li><a href="#profile">Profile</a></li>
      <li><a href="#messages">Messages</a></li>
      <li><a href="#settings">Settings</a></li>
      <li><a href="#">Tab4</a></li>
      <li><a href="#">Tab5</a></li>
      <li><a href="#">Tab6</a></li>
      <li><a href="#">Tab7</a></li>
      <li><a href="#">Tab8</a></li>
      <li><a href="#">Tab9</a></li>
      <li><a href="#">Tab10</a></li>
      <li><a href="#">Tab11</a></li>
	  <li><a href="#">Tab12</a></li>
      <li><a href="#">Tab13</a></li>
      <li><a href="#">Tab14</a></li>
	  <li><a href="#">Tab15</a></li>
      <li><a href="#">Tab16</a></li>
      <li><a href="#">Tab17</a></li>
  </ul>
  </div>
</div>

 

CSS

.wrapper {
    position:relative;
    margin:0 auto;
    overflow:hidden;
	padding:5px;
  	height:50px;
}

.list {
    position:absolute;
    left:0px;
    top:0px;
  	min-width:3000px;
  	margin-left:12px;
    margin-top:0px;
}

.list li{
	display:table-cell;
    position:relative;
    text-align:center;
    cursor:grab;
    cursor:-webkit-grab;
    color:#efefef;
    vertical-align:middle;
}

.scroller {
  text-align:center;
  cursor:pointer;
  display:none;
  padding:7px;
  padding-top:11px;
  white-space:no-wrap;
  vertical-align:middle;
  background-color:#fff;
}

.scroller-right{
  float:right;
}

.scroller-left {
  float:left;
}

この記事を監修してくれた方

大堀 翔一郎(おおほりしょういちろう)
IT商社にてコーポレートサイト、ブランドサイトのディレクター兼デザイナー兼コーダー。

大学卒業後、WEB制作会社にでデザイナーとして入社し大手企業のサイト制作やブランドサイトの制作に携わってきました。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

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

大石ゆかり

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

オンラインのプログラミングスクールTechAcademyでは初心者でも最短4週間でオリジナルWebサイトを公開できるWebデザインオンラインブートキャンプを開催しています。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。