

rightcontentに配置した二枚の画像を右側の枠に広告のような形で入れたいです。  
mainとrightcontentのグループに分けてfloat:left;を用いて右への回り込みをさせようと思いましたがサルの画像のブロックが下にずれてしまい二枚の画像も横へ行きません。

marginによる横幅の問題かとも思いましたがmarginを消しても変化しませんでした。原因と解決方法を知りたいです。

カラムレイアウト有  
[![画像の説明をここに入力](https://i.stack.imgur.com/YlgUw.png)](https://i.stack.imgur.com/YlgUw.png)

[code]

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Banana design</title>
        <link rel="stylesheet" href="top.css">
    </head>
    <body>
        <!----header------>
        <div class="top-head">
          <div class="content">
              <h1>Banana Design</h1>
          </div>
        </div>
        <!----header----->
        <!----nav bar------>
        <nav>
            <ul class="top-nav">
                <li class="list-border"></li>
                <li><a href="#" class="nav-link">ホーム</a></li>
                <li class="list-border"></li>
                <li><a href="#" class="nav-link">組織概要</a></li>
                <li class="list-border"></li>
                <li><a href="#" class="nav-link">事業内容</a></li>
                <li class="list-border"></li>
                <div class="clear"></div>
            </ul>
            
        </nav>
        <!----nav bar------>
        <!---main content-->
        <div class="main">
            <div class="leftcontent">
                <div class="maincontent">
                
                   <div class="box">
                      <div class="titleback">
                         <h2 class="title">NEWS</h2>
                      </div>
                   </div>
                   <div class="boxcontent">
                       <ul class="contentul">
                         <li class="contentli">2022/01/27 
                           <a href="#" class="tag">service</a> 
                           <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">serviece</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                         <li class="contentli">2022/01/27
                            <a href="#" class="tag">service</a>
                            <a href="#" class="text">BANANAに今秋の新商品が登場！</a>
                         </li>
                        </ul>
                   </div>
               </div>
               <div class="maincontent2">
                    <div class="box2">
                        <div class="titleback2">
                           <h3 class="title">About Us</h3>
                       </div>
                       <div class="boxcontent2">
                           <img class="contentimg" src="https://cyllabus-production.s3.amazonaws.com/uploads/course_image/image/2296/5e5c1c7e-ae9a-4e98-adfd-480175052663.png" alt="">
                           <p>バナナとは"バナナを食べるくらいならバナナになれ。"をモットーにバナナで世界に凹みをいれるその日まで戦い続ける組織である。</p>
                       </div>
                   </div>
               </div>
            
               <div class="maincontent3">
                    <div class="box3">
                        <div class="titleback3">
                           <h3 class="title">Services</h3> 
                       </div>
                       <div class="boxcontent3">
                           <img class="contentimg" src="https://cyllabus-production.s3.amazonaws.com/uploads/course_image/image/2297/e62a4514-c1bb-4e74-a9da-9bebc2cebf33.png" alt="">
                           <p>バナナではあらゆるクリエイティブ事業に挑戦しています。</p>
                    </div>
                </div>
            <div class="clear"></div>
            </div>
        </div>
        <!--main content-->
        <!--left content-->
        <div class="rightcontent">
            <div><img  src="https://cyllabus-production.s3.amazonaws.com/uploads/course_image/image/2329/a80f1b30-2675-4e79-91cf-158f1038204e.jpg" alt=""></div><!--img:インライン要素だから横がデフォルト。divにしてブロック要素にする-->
            <div><img  src="https://cyllabus-production.s3.amazonaws.com/uploads/course_image/image/2331/ef7fe7dc-3bfc-4017-989a-86c78deabc06.jpg" alt=""></div>
        </div>
        <div class="clear"></div>
    </body>
    </html>
    
[/code]

[code]

    html,
    body {
      margin: 0;
      padding: 0;
    }
    
    body {
      background-color: rgba(238, 238, 149, 0.575);
      z-index: 0;
    }
    
    /*----------header-------------*/
    .top-head {
      height: 300px;
      width: 100%;
    
      background: url(https://cyllabus-production.s3.amazonaws.com/uploads/course_image/image/3145/e7d27adf-1c78-4ed4-b3c6-f62eaa27232e.png);
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
    }
    .content {
      width: 980px;
      margin: 0 auto;
    }
    .top-head h1 {
      color: white;
      font-size: 60px;
      padding-top: 70px;
      margin-left: 30px;
      text-shadow: 1px 2px 2px rgba(52, 85, 43, 0, 8); /* X. Y. 半径*/
    }
    
    h1 {
      margin: 0;
    }
    
    /*----------------header-------------*/
    /*-----------nav---------------*/
    ul {
      margin: 0 auto;
      padding: 0;
      list-style: none;
    }
    
    .top-nav {
      background-image: -webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(0, #856727),
        color-stop(1, #6a511f)
      );
    }
    
    .top-nav ul {
      margin: 0 auto;
      width: 980px;
      box-shadow: 0px -2px 3px rgba(52, 85, 43, 0.8);
    } /*top-bottomへのグラデーション*/
    
    .top-nav li {
      float: left; /*ulに指定しても横並びにならない*/
    }
    
    .clear {
      clear: both; /*flaotの回り込みによってcssが効かないことがある。その時はfloatを指定した次の要素にclear:bothを指定して回り込みを解除する*/
    }
    
    .nav-link {
      color: white;
      display: block; /*linkはinline要素だからblock要素にすることでmargin/widthが効くようにしている*/
      width: 160px;
      font-size: 16px;
      text-align: center;
      padding: 18px 0;
      opacity: 0.6;
      background-image: -webkit-gradient(
        linear,
        left bottom,
        left top,
        color-stop(0, #856727),
        color-stop(1, #6a511f)
      );
    }
    
    a {
      text-decoration: none; /*linkタグについてるデフォルトのアンダーラインを削除*/
    }
    
    .nav-link:hover {
      opacity: 1;
    }
    
    .list-border {
      display: block;
      width: 2px;
      background-color: rgba(49, 25, 0, 0.7);
      height: 60px;
      border-right: 1px solid #fff;
      opacity: 0.5;
    }
    
    /*----------------nav----------------*/
    /*------------------main---------------*/
    .main {
      margin: 0;
      width: 100%;
    }
    .maincontent {
      margin-top: 50px;
      margin-left: 150px;
      width: 800px;
      height: 250px;
      background-color: white;
    }
    .box {
      width: 800px;
      height: 30px;
      background-color: orange;
    }
    .boxcontent {
      margin: 0;
      height: 220px;
      overflow: scroll;
    }
    
    .contentul {
      list-style: none;
    }
    .tag {
      background-color: rgba(15, 128, 15, 0.336);
      border-radius: 20px;
    }
    .title {
      color: white;
      margin: 0;
      font-size: 1.2rem;
      padding-left: 5px;
    }
    .tag .text {
      text-decoration: none;
    }
    .contentli {
      margin-bottom: 20px;
    }
    /*--------------------main----------------------*/
    /*------------------main-small-------------------*/
    .maincontent2,
    .maincontent3 {
      width: 350px;
      height: 250px;
      margin-top: 20px;
      background: white;
      float: left;
    }
    
    .maincontent2 {
      margin-left: 150px;
      margin-right: 50px;
    }
    
    .titleback2,
    .titleback3 {
      width: 100%;
      height: 30px;
      background: orange;
    }
    
    .boxcontent2,
    .boxcontent3 {
      height: 220px;
      overflow: scroll;
    }
    
    .contentimg {
      width: 300px;
      height: 200px;
      margin: 15px;
    }
    /*-------------------main-small-------------------*/
    
    /*-----------------right content------------------*/
    
    .rightcontent img {
      width: 300px;
      height: 240px;
    }
    .main,
    .rightcontent {
      float: left;
      width: 240px;
    　margin-right:40px;
    }
    
    
[/code]


CC BY-SA 4.0
2022-02-03T01:05:21.497
86109
2022-02-08T05:57:29.230
2022-02-08T05:52:03.127
3060
48605
question
css
要素の横並びが指定通りになりません（float:left;）


全体をボックスとして捉えるのがいいと思います。よくあるのだと

[code]

    <div class="wrapper">
      <div class="main-content">
        <div class="main">
            main content
        </div>
    
        <div class="small-box">
          <div class="small-box__left">
             smallbox1
          </div>
          <div class="small-box__right">
             smallbox1
          </div>
        </div>
      </div>
      <div class="side-content">
          <div class="right-content">
             right-content
          </div>
          <div class="right-content">
             right-content
          </div>
      </div>
    </div>
    
[/code]

cssでいうと

[code]

    .wrapper {
      clear: both;
    }
    .main-content {
       float: left;
    }
    .side-content {
       float: right;
    }
    
[/code]

こんなのりで

`clear: both`で覆った内側にfloat:right, float: leftを使う感じです。（floatを使うなら）

[code]

    .small-box {
      clear: both;
    }
    
    .small-box__left {
      float: left;
    }
    .small-box__right {
      float: right;
    }
    
[/code]

最近でいうとgridを使うのが流行りなんじゃないかとは思います。

<https://webdesign-trends.net/entry/11086>

参考にしてください。


CC BY-SA 4.0
2022-02-08T05:57:29.230
86200
2022-02-08T05:57:29.230
9240
86109
answer