Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

スマートフォンレイアウトで、サイドのレイアウトにブロックを配置するとフロント画面に表示されない #4104

Closed
okazy opened this issue Mar 6, 2019 · 3 comments
Labels
question Further information is requested
Milestone

Comments

@okazy
Copy link
Contributor

okazy commented Mar 6, 2019

概要(Overview)

スマートフォンレイアウトで、サイドのレイアウトにブロックを配置するとフロント画面に表示されない。
下記の59行目で display: none; に設定されているために非表示になっている。
こちらを消すとブロックが表示されるが、表示が崩れてしまう状態となる。

& &__left,
& &__right {
display: none;
@include media_desktop() {
display: block;
width: 25%;
}
}

期待する内容(Expect) or 要望 (Requirement)

こちらは正しい挙動でしょうか?
どのような意図で非表示となっているのか知りたいです。
レスポンシブデザインなので、メインコンテンツの上か下に表示させるのが良いのではと思いました。
ご意見いただけますでしょうか。

再現手順(Procedure)

  • レイアウト管理にて #side_left or #side_right にブロックを配置する。
  • スマートフォンでフロント画面を表示

環境 (environment)

  • EC-CUBE: 4.0.2
  • PHP: x.x.x
  • DB:
    • PostgreSQL x.x.x
    • MySQL x.x.x

関連情報 (Ref)

@okazy okazy added the question Further information is requested label Mar 6, 2019
@okazy okazy added this to the 4.0.x milestone Mar 6, 2019
@ghost
Copy link

ghost commented Mar 8, 2019

@okazy さん

再現手順に記載されていた手順で任意のブロックを配置し
該当のCSSの記述のdisplay: none;を消すとレイアウトが崩れたことを確認いたしました。

修正方法としましては一部のCSSの記述をdesktopの時だけに適用させることで
desktopや他のレイアウトにできるだけ影響が出ることなく表示ができるかと思います。

具体的には

display: flex;flex-wrap: nowrap;はdesktopの時だけ適用してあげる

& &__contents {
margin-right: auto;
margin-left: auto;
width: 100%;
max-width: 1150px;
display: flex;
flex-wrap: nowrap;
}

 & &__contents {
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    max-width: 1150px;
    @include media_desktop() {
      display: flex;
      flex-wrap: nowrap;
    }

  }

スマホ用の display: none; は削除

& &__left,
& &__right {
display: none;
@include media_desktop() {
display: block;
width: 25%;
}
}

& &__left,
  & &__right {
    @include media_desktop() {
      display: block;
      width: 25%;
    }
  }

また、以下の期待する内容(Expect) or 要望 (Requirement)について

こちらは正しい挙動でしょうか?
どのような意図で非表示となっているのか知りたいです。
レスポンシブデザインなので、メインコンテンツの上か下に表示させるのが良いのではと思いました。
ご意見いただけますでしょうか。

個人的な見解としましては、2カラム、3カラムの場合のサイドバーはカテゴリやバナーが入ることを想定されていたのではないでしょうか?
スマホの場合デザインによってはもちろん違いますが、まだメニューバーの中に入れることが多い傾向にあるので重複してしまったコンテンツを非表示としたのではないかと考えます。

したがって想定したターゲットユーザーさんができるだけHTMLやCSSを触らないように想定されているのではないでしょうか。

@chihiro-adachi
Copy link
Contributor

個人的な見解としましては、2カラム、3カラムの場合のサイドバーはカテゴリやバナーが入ることを想定されていたのではないでしょうか?
スマホの場合デザインによってはもちろん違いますが、まだメニューバーの中に入れることが多い傾> 向にあるので重複してしまったコンテンツを非表示としたのではないかと考えます。

はい、そのとおりです。
サイドカラムに表示しているコンテンツは、スマホサイズでは非表示としています。もしハンバーガーメニューに配置したい場合は、レイアウトの#drawerセクションを使っていただく形になります

@chihiro-adachi chihiro-adachi modified the milestones: 4.0.x, Not release Mar 13, 2019
@okazy
Copy link
Contributor Author

okazy commented Mar 13, 2019

ありがとうございます!
現状の仕様と意図を理解しました。

こちらの説明を、ツールチップなど埋め込めたらと思ったのですが、EC-CUBE本体というよりテンプレートの仕様となり、管理画面にツールチップを埋め込むと逆に分かりにくくなるかもしれませんね。。。

疑問は解決しましたのでこちらのissueはクローズとさせていただきます。

@okazy okazy closed this as completed Mar 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants