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

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

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

Haml(HTML abstraction markup language)は、HTML/XHTMLを効率的に記述するためのマークアップ言語および記法です。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

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

Q&A

解決済

1回答

730閲覧

[HTML/CSS]ブラウザの幅によって、余白を調整したい

helloTsubasa

総合スコア0

Haml

Haml(HTML abstraction markup language)は、HTML/XHTMLを効率的に記述するためのマークアップ言語および記法です。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

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

0グッド

0クリップ

投稿2020/06/22 04:42

編集2020/06/22 05:19

前提・実現したいこと

  • Instagramの様なWeb画面を作ろうとしています。
  • フレームワークはRuby on Railsです
  • HamlとSassを使っています。
  • 現在はheader部分を作成中
  • headerは3つのboxの横並びで構成

ブラウザの幅を小さくした時に、headerの両側の余白からまずは減っていき、
余白がなくなった後は、box間の余白が無くなっていく様にしたいです。

発生している問題・エラーメッセージ

両側の余白をなくす事ができず、ブラウザの幅を小さくした時、
box間の余白が先に小さくなってしまう。
▼参考キャプチャ
https://gyazo.com/8108b8f523951e677effab7982282609

該当のソースコード

↓ブラウザで表示時のHTML

HTML

1<header class="header"> 2 <div class="header__box"> 3 <div class="title"> 4 <a class="title-img" href="/"><img width="120" alt="Instagram" src="/assets/title-logo-29864f8a083ba929ab139e67ac0a1b222daecc7060502876bccdbf2aa193756d.png"></a> 5 </div> 6 <div class="search"> 7 <p>????検索</p> 8 </div> 9 <div class="menu"> 10 <ul class="menu__icons"> 11 <li class="home-icon"> 12 <a href="/#"><i class="fas fa-globe-americas fa-lg btn-icon"></i> 13 </a></li> 14 <li class="chat-icon"> 15 <a href="/#"><i class="fas fa-paper-plane fa-lg btn-icon"></i> 16 </a></li> 17 <li class="profile-icon"> 18 <a href="/#"><i class="fas fa-user-astronaut fa-lg btn-icon"></i> 19 </a></li> 20 </ul> 21 </div> 22 </div> 23</header>

↓実際のソースコード

Haml

1%header.header 2 .header__box 3 .title 4 = link_to image_tag('title-logo.png', width: '120', alt: "Instagram"), "/", class: "title-img" 5 -# - if user_signed_in? 6 7 .search 8 %p ????検索 9 10 .menu 11 %ul.menu__icons 12 %li.home-icon 13 = link_to "/#" do 14 %i.fas.fa-globe-americas.fa-lg.btn-icon 15 %li.chat-icon 16 = link_to "/#" do 17 %i.fas.fa-paper-plane.fa-lg.btn-icon 18 %li.profile-icon 19 = link_to "/#" do 20 %i.fas.fa-user-astronaut.fa-lg.btn-icon

Sass

1* { 2 box-sizing: border-box; 3} 4 5.header{ 6 height: 60px; 7 border-bottom: 1px solid lightgray; 8 &__box{ 9 height: 100%; 10 display: flex; 11 align-items: center; 12 justify-content: space-between; 13 margin-left: 20%; 14 margin-right: 20%; 15 padding: 0 20px; 16 } 17} 18 19.search{ 20 width: 215px; 21 text-align: center; 22 border: 1px solid lightgray; 23 background-color: rgb(250, 250, 250); 24} 25 26.menu{ 27 &__icons{ 28 display: flex; 29 justify-content: flex-end; 30 .home-icon{ 31 margin-right: 20px; 32 } 33 .chat-icon{ 34 margin-right: 20px; 35 } 36 } 37} 38 39.btn-icon{ 40 text-decoration: none; 41 color: gray; 42}

試したこと

ネットでいろいろと検索したのですが、解決策を見つけられませんでした…。

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

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

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

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

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

miyabi_takatsuk

2020/06/22 04:58

使っているフレームワークを記載、質問タグに追加してください。 おそらく、Ruby On Rails使っていて、 それは、hamlですよね? そして、ブラウザで表示時の、HTML自体の記載をお願いします。
helloTsubasa

2020/06/22 05:16

使っているフレームワークを記載し、質問タグに追加しました。 ブラウザで表示時のHTMLを記載しました。
guest

回答1

0

自己解決

justify-contentとmax-widthを組み合わせる事で解決できました!

キャプチャ動画

↓※Sassを使っています

css

1.header{ 2 height: 60px; 3 border-bottom: 1px solid lightgray; 4 display: flex; 5 justify-content: center; 6 &__box{ 7 height: 100%; 8 width: 100%; 9 max-width: 840px; 10 display: flex; 11 align-items: center; 12 justify-content: space-between; 13 } 14}

投稿2020/06/22 06:32

helloTsubasa

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問