🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
CSS

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

Q&A

2回答

11485閲覧

overflow-y:autoにしたいが、overflow-xはデフォルトのままにしたい

grapefruit

総合スコア33

CSS

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

0グッド

0クリップ

投稿2018/07/27 06:58

編集2018/08/29 05:07

タイトル通り

上下のoverflowはautoにして、左右は動かさないようにしたいです。

前提・実現したいこと

今、やりたいことは、長方形のボックスの中に、いくつかのカードをリストみたいに表示している。またそのカードをほかのボックスにドラッグすることができる。

■■な機能を実装中に以下のエラーメッセージが発生しました。

そこで、ボックスの上下はカードが多くなると、スクロールするように以下のようにcssで設定し、上下はできるようになっていますが。
ただ、その影響で左右方向にほかのボックスにドラッグする際に、スクロールが出てくる状態になっている。

該当のソースコード

html

1<div class="contentBox"> 2 <div class="cardList"> 3 (カード形式の情報がリストになってる) 4 </div> 5</div>

css

1//cardList 2 overflow-y:auto;(←このように、上下のスクロールのみを指定) 3 border:1px solid lightgray; 4 background-color: #9f9fa0; 5 position:relative; 6 top:-16px; 7 width:280px; 8 height:750px; 9 border-bottom-left-radius:15px; 10 border-bottom-right-radius: 15px; 11 } 12//contentBox 13 box-sizing: border-box; 14 min-height:40px; 15 padding-left:50px; 16 padding-top:30px; 17 width:100%; 18 height:730px;

どこが間違っているのでしょうか、ご指摘いただけると光栄ですorz

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

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

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

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

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

s8_chu

2018/07/27 10:19

もしよければ、質問者さんの記述した問題が再現するソースコードを追記していただけませんか?
yoshinavi

2018/07/27 23:16

「overflow-x:hidden;」を設定している要素自体が表示画面を超えている可能性もあるので、HTML・CSSのコードを提示されると、より良い回答を得れると思います。
guest

回答2

0

もう終わったと思って放置していたのですが「まだ回答を求めています」とのことなので、根拠を述べましょう。
https://drafts.csswg.org/css-overflow-3/#overflow-properties

as specified, except with 'visible'/'clip' computing to 'auto'/'hidden' (respectively) if one of 'overflow-x' or 'overflow-y' is neither 'visible' nor 'clip'

overflow-x、overflow-y のいずれかが visible でも clip でもない場合、visible/clip はそれぞれ auto/hidden と計算されます。

つまり、overflow-y: auto; と指定すれば、overflow-x も auto になります(初期値がvisibleのため)

投稿2018/08/29 05:33

編集2018/08/29 06:24
x_x

総合スコア13749

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

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

grapefruit

2018/08/29 05:53

早速のご返答ありがとうございます! 上記の件理解しました! ただ、同じ要素に対してoverflow-y,overflow-xを同時に指定しても、うまか行かず どうすればいいでしょう?
x_x

2018/08/29 06:15

どのようにして、どううまくいかないのか、わからないのではなんとも言えませんね
guest

0

同じ要素に overflow-x, overflow-y を指定すると、組み合わせによってはどちらかの値に固定されます。

対策としては、要素を適当なタグでラッピングして親要素、子要素にそれぞれ overflow-x, overflow-y を片方ずつ指定する方法があります。

投稿2018/07/28 02:46

yhg

総合スコア2161

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

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

grapefruit

2018/08/29 05:51

回答ありがとうございます! 返信が遅くなり申し訳ございませんorz 要素に適当なタグをつけて片方ずつ指定してみたのですが、それでも効きませんでした
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問