No.3
- 回答日時:
「ウィンドウの巾を狭めたとき」に、「floatが解除されないように」という矛盾した要望をもたれても、無理です。
そもそも、floatは、画像などの周囲に文章を【回り込ませるため】のプロパティですから、『表示しきれないときは下側に回りこませる』のですから、floatでブロックを並べること自体、すでに「ウィンドウ巾に合わせて」を否定しているのです。
--よく見かける方法ですが、どこかのオーサリングツールか、誰かが流行らせたのでしょうね。
floatさえ使わなければ、いとも簡単に実装できます。しかも本文中ではfloatを使ったり、解除したりが自由に出来ます。詳しくは下記サンプルをご覧ください。
[HTML4.01strict+CSS2.1]
★Another HTML-lint gateway ( http://openlab.ring.gr.jp/k16/htmllint/htmllint. … )
★W3C CSS 検証サービス ( http://jigsaw.w3.org/css-validator/#validate_by_ … )
で検証済み
※タブは、_に置換してあります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
_<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
_<title>サンプル</title>
_<meta name="author" content="ORUKA1951">
_<meta http-equiv="Content-Style-Type" content="text/css">
_<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" >
_<link rel="START" href="../index.html">
_<style type="text/css">
<!--
html,body{margin:0;padding:0;background-color:gray;}
div.section p{
_text-indent:1em;
_margin:0 1em;
_line-height:1.6em;
}
div.header,div.article,div.footer{
_width:70%;margin:0 auto;/* センター配置IE5,非対応 */
/* min-width:400px; */ /*あまり小さくならないようにしたいときは */
_border:solid 1px rgb(255,200,200);background-color:rgb(255,200,200);
}
div.article{
_position:relative;
_background-color:lime;border-color:lime;
}
div.article div.section img{
_float:left;
_margin: 5px;
_border:1px solid gray;
_background-color:white;
}
div.article div.section{
_margin-left:42%;margin-bottom:200px;/* 見本のため */
_clear:left;/* clearがこのブロック内で使える */
}
div.article div.contentTable{
_position:absolute;
_top:0;left:0;width:40%;height:100%;
_background-color:aqua;border-color:aqua;
}
div.footer{background-color:yellow;border-color:yellow;}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>サンプル</h1>
__<div class="abstract">
___<h2>要約</h2>
__</div>
_</div>
_<div class="article">
__<div class="section">
___<h2><a name="QUESTION">質問</a></h2>
___<p>
____図のように<div>で段組を作った場合、このままだとウィンドウの幅を狭めた時に、CのブロックがBの下に回りこんでしまうと思うのですが、これを防ぎたい場合はやはりA・B・CもしくはB・Cをさらにブロックで囲うしか方法はないでしょうか?
___</p>
__</div>
__<div class="section">
___<h2><a name="ANSWER">回答</a></h2>
___<p>
____<img src="./images/sample.gif" width="100" height="60" alt="画像">
___</p>
___<p>
____floatさえ使わなければ、実に簡単に実装できます。floatをブロックの配置に使いませんから、本文中でfloatを使ったり、解除したりが自由に出来ます。floatはそのためにとっておきましょう。
___</p>
___<p>
____本来はabsoluteを使うべきです。特にリキッドスタイルの場合は、floatではなくabsoluteでなければなりません。
___</p>
__</div>
__<div class="section">
___<h2><a name="SAMPLE">方法</a></h2>
___<p>
____IE6以前の古いブラウザに対応させるなら、必ず長くなるほう(多くは本文section)を基準にして、短いほうをabsoluteさせる。
___</p>
___<p>
____IE7以降の新しいブラウザは、min-widthやmax-widthプロパティが使えるのでそれを活用して、ある程度より小さなウィンドウには横幅を固定してしまうとよいかもしれません。
___</p>
__</div>
__<div class="contentTable">
___<ol>
____<li><a href="#QUESTION">質問</a></li>
____<li><a href="#ANSWER">回答</a></li>
____<li><a href="#SAMPLE">見本</a></li>
___</ol>
__</div>
_</div>
_<div class="footer">
__<h2>文書情報</h2>
_</div>
</body>
</html>
No.5
- 回答日時:
私の場合、A・B・CもしくはB・Cをさらにブロックで囲む方法を推薦します。
行の開始位置か判るし まわしこみの解除をしないとブラザーより おかしくなりますので。
なお「著作権について」の行は、まわしこみの解除は、必ず指定しないとIEでは、良いですがMac系では、おかしくなります。
%指定でもある程度ウィンドウの幅を狭めた場合発生します。
なお、No.4さんの回答の「paddin,border,marginが0と仮定します。それらがある場合は、50%から引き算してください。」は誤りですよ。
親要素に対してですよ。
添付写真の「注意書き等」の下の行「写真説明一・写真説明二・写 真」は、「注意書き等」が親要素ですよ。
<div style="width:44%;float:left;">
<div style="width:4%;float:left;">写真説明一
<div style="width:4%;float:left;">写真説明二
<div style="width:83%;float:left;;">写真
で作成実際作成しています。
表示上100%にしていません。
No.6
- 回答日時:
#4です。
#5さん、ご指摘ありがとうございます。当方でも、おっしゃる操作を確認いたしました。101%なのに落っこちていないです。腑に落ちないので教えていただきたいのですが、今回私が思い込んでいた親要素に対して100%以内ならおさまるという認識は、css仕様書の9.5.1 浮動体を配置する(Positioning the float: the 'float' property) でfloatの配置の箇所、
7.自身の左側に更に別の左浮動ボックスを持っている左浮動ボックスの外右辺は、包含ブロックの右辺より右にきてはならない(簡潔に言うと、左浮動体は、できる限り左に寄せられていなければ、右辺を突き抜けてはならない)。右浮動ボックスも同様の規則に従う。
に反して配置されているように思います。すべてのブラウザが誤解釈をしているとも思えず、私の理解に誤解が生じているのでしょうか。ご提示されている例では、フロートされている右辺が包含ブロックの右辺より右に来てると思われるのですが、どのように理解すればいいのか、教えていただけないでしょうか?
便乗質問で申し訳ありませんが、どうぞよろしくお願いします。
No.8
- 回答日時:
No5ですがテンプレートの記述を参考に作成しましたがうまくいきませんので色々調査して作成しましたので通論なのチェックしていません。
なんせ老化予防にホームページを勉強していますので、真に申し訳有りませんが回答出来ません。
参考の対象部分は、
http://ryuso.info/me/se1/tp_p1.htm#a_b7
ですが、下の「左側表示・左側写真・右側写真・注意書き表示(プラウザ表示状態)」の方が良いと思いますが。ウィンドウの幅を100ぐらいに狭めても対応していますが。(参考の対象部分も同じですが)
35%+64%=99%ですが、どこで発生したか忘れました100%でしたらおかしく表示してので99%にしていますが、実際現時点では、100%でもかまいません。
<div style="width:90%;float:left;margin-left:1.25em;">だとおかしくなる?(IE8以降とmac系ブラザ)ではないですよね。
参考URL:http://ryuso.info/me/se1/tp_p1.htm#a_b7
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP アップロードファイルの数に応じてCSSを動的に変更したいのですが、方法がわかりません 3 2023/07/23 21:59
- PHP 掲示板を作成しておりアップロードファイルとメッセージを並べたいので、アドバイスお願い致します 2 2023/07/17 21:01
- HTML・CSS 要素の幅をいろんな写真の幅に合わせたい。 1 2022/07/25 20:11
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- HTML・CSS CSS上での計算を行うためのルールについて教えてください。 3 2022/08/15 14:43
- JavaScript 指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードを教えてください 2 2023/04/27 17:58
- HTML・CSS サルワカさんの吹き出しのスタイルシートについて。 https://saruwakakun.com/h 2 2022/10/28 22:55
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【CSS】floatで左右に並べた...
-
divのheight指定で画面一杯に表...
-
クリッカブルマップとインライ...
-
3点リーダーの作り方
-
CSSでdivの縦幅を指定する方法
-
htmlのstyleのposition:relativ...
-
positionのrelativeとabsolute...
-
レイアウトが崩れないようにす...
-
オンマウス時に別画像を上に重...
-
HTMLですCSSです この画像のよ...
-
YES or NO形式で進んで行く、タ...
-
HTMLですCSSです 画像のように...
-
MAX関数を使ってからLEFT JOIN...
-
htmlの記述で link rel=styles...
-
画像の上に画像リンクを貼る方法
-
javascriptテキストBOX色を元に...
-
読み込んだQRコードをフォーム...
-
複数画像のランダム複数表示(...
-
Gifアニメ、最後のコマに行った...
-
Slick.jsのオプションrtlについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Ctrl+F(検索)の窓を出したいの...
-
フッター上部に謎の隙間
-
【CSS】floatで左右に並べた...
-
HTMLですCSSです この画像のよ...
-
css固定したフッターが本文と重...
-
CSS <div>の入れ子が反映さ...
-
スクロール可能なチェックボックス
-
textareaで入力した文字を改行...
-
オンマウス時に別画像を上に重...
-
文字を固定したいのですが…
-
スタイルシートで画面を上下に...
-
チェックボックスの背景色って...
-
フッターの下に隙間ができてしまう
-
文字をクリックしたら別の文字...
-
大分類・中分類・小分類
-
HTMLですCSSです 画像のように...
-
CSSでdivのheightを動的に
-
★★★フッター最下部固定/スクロ...
-
離れた場所にマウスオーバーで...
-
htmlのstyleのposition:relativ...
おすすめ情報