街中で見かけて「グッときた人」の思い出

ホームページ製作中ですが、トップ、ボトムの間にb1、b、b2のブロックを組んでいます。
問題は真ん中のbに写真を何枚か貼り付けて、テキストをその写真の横に、回りこませたいのですが、img { float: left; }では回り込みません、何方か知恵をお貸しいただけないでしょうか。

A 回答 (4件)

これを試してうまくいけばANo2さんのものを試したらいいとおもう


あと質問者の技術レベルがわからないのですが
<>とか"とか抜けてないですよね?

<html>
<head>
<style>
img,p{float:left;}
</style>
</head>
<body>
<div id="b">
<img src="画像1">
<p>テキスト</p>
<img src="画像2">
<p>テキスト</p>
</div>
</body>
</html>
    • good
    • 0
この回答へのお礼

有り難うございます。
原因は不明ですが、img { float: left; }は適当出来ました。
ただ体裁が崩れるので、別の質問でします。

お礼日時:2011/07/22 09:18

 普通にfloatで回り込むはずです。

ただし、ブロックの配置などにfloatを使うなど変な事しているとだめですが・・・
 いずれにしてもHTMLが、きちんと文書構造にしたがってマークアップされていれば、2カラムだろうが2カラムだろうが、5カラムだろうが好きに・・。【下のほうにある/* を削除すると左右2カラムの4カラムになります。】
HTMLをデザインのためにマークアップしてると融通利きません。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
サンプルのHTMLは、文書構造だけをきちんと示しているはずです。よってシンプル
★Another HTML-lint gateway ( http://openlab.ring.gr.jp/k16/htmllint/htmllint. … )
★W3C CSS 検証サービス ( http://jigsaw.w3.org/css-validator/#validate_by_ … )
で検証済み。
CSSの内容については、難しいところはないので、説明しません。
★タブは_に置換してあります。元に戻してください。

<!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;}
p{text-indent:1em;margin:0 1.2em;}
body{line-height:1.4em;}
div.header,div.section,div.footer{
__width:100%;max-width:900px;min-width:450px;
__margin:0 auto;
__border:solid 1px gray;
}
div.section{
__position:relative;
__min-height:400px;
}
div.section div{
__clear:left;
}
div.section div.nav,
div.section div.aside{
__position:absolute;
__width:20%;
__height:100%;
__top:0;
}
div.section div.aside{
__right:0;
}
div.section div.section,
div.section h2{
__position:static;
__width:56%;
__padding:0;
__min-height:0;
__margin:0 22%;
}
div.section h2{
__margin-top:1ex;
}
div.section div.article{
__border:solid red 1px;
}
div.section div h2{
__width:100%;
__margin: 1ex 1em;
}
div.section div.figure{
__padding:5px;
__float:left;
}

/* わかりやすくするため背景色 */
div.section div.nav{background-color:fuchsia;}
div.section div.aside{background-color:yellow;}
div.header{background-color:aqua;}
div.footer{background-color:white;}

/* 4カラム 下のコメントマークを消す */
/*
div.section div.annotation{
__position:absolute;
__width:20%;
__height:100%;
__top:0;
__left:0;
}
div.section div.annotation div.nav,
div.section div.annotation div.aside{
__position:static;
__width:100%;
__height:auto;
}
div.section div.section,
div.section h2{
__width:78%;
__min-height:0;
__margin-left:22%;
}
div.section div.annotation{
__background-color:silver;
}
div.section div.nav,
div.section div.aside{
__background-color:inherit;
}

*/
-->
__</style>
</head>
<body>
__<div class="header">
____<h1>サンプル</h1>
____<p>画像を回り込ませる。</p>
__</div>
__<div class="section">
____<h2>画像の周囲を回りこませる</h2>
____<div class="section">
______<div class="figure">
________<img src="./images/sample1.jpg" width="240" height="169" alt="5カラムの中心ブロック内の画像を回り込む文章">
______</div>
______<p>
________ホームページ製作中ですが、トップ、ボトムの間にb1、b、b2のブロックを組んでいます。
______</p>
______<p>
________問題は真ん中のbに写真を何枚か貼り付けて、テキストをその写真の横に、回りこませたいのですが、img { float: left; }では回り込みません、何方か知恵をお貸しいただけないでしょうか。
______</p>
______<div class="article">
________<h2>説明</h2>
________<p>
__________ごく普通にfloatでよいです。ただしimgは「置換インライン要素」ですから出来ればサンプルのようにブロックに入れるほうが良いでしょう。
________</p>
______</div>
____</div>
____<div class="annotation">
______<div class="nav">
________<ul>
__________<li><a href="../index.html">Top</a></li>
__________<li><a href="../books">書籍</a></li>
__________<li><a href="../info">情報</a></li>
________</ul>
______</div>
______<div class="aside">
________<h3>脚注</h3>
______</div>
____</div>
__</div>
__<div class="footer">
____<h2>文書情報</h2>
__</div>
</body>
</html>
    • good
    • 0
この回答へのお礼

有り難うございます。
img { float: left; }は適用出来ました。原因は不明ですが。
ただ体裁が崩れるので他の質問をします。
チェックのホームページ役に立ちました。有り難うございました。

お礼日時:2011/07/22 09:24

状況がわかりませんが、テキストをdivで括ってみては?



<style>
div#b img , div#b div{
float: left;
}
div#b2{
clear:both;
}
</style>
<div id="top">top</div>
<div id="b1">b1</div>
<div id="b">
<img src="1.jpg">
<div>hogehoge</div>
<img src="2.jpg">
<div>hogehoge</div>
<img src="3.jpg">
<div>hogehoge</div>
</div>
<div id="b2">b2</div>
<div id="bottom">bottom</div>

この回答への補足

早速の回答有り難うございます。
やってみたのですが、テキストのカラーがクリアされただけで他に変化はありませんでした。
それと、5カラムでなく、3カラムの間違いでした。

補足日時:2011/07/21 16:10
    • good
    • 0
この回答へのお礼

ありがとうございます。
img { float: left; }は適用出来ました、ただ体裁が崩れるので別の質問でします。

お礼日時:2011/07/22 09:10

各写真の横にそれぞれのテキストですか?


テキストにもfloat:leftがいるんじゃないでしょうか?

直接imgにfloatするより・・・dlとかでくくったりするのでは?

この回答への補足

早速の回答、有り難うございます。
すみません、もう少し詳しく書いてもらえると有り難いのですが。

補足日時:2011/07/21 16:28
    • good
    • 0
この回答へのお礼

有り難うございました。
img { float: left; }は適用出来ました、原因不明ですが。
ただ体裁が崩れるので、他の質問でします。

お礼日時:2011/07/22 09:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!