0

私はdbから画像を印刷しているC#で次のコードを持っています.そして、このコード画像とラジオボタンを介して、1行に1回表示されます.ここに私のコードがあります

foreach (DataRow item in ds.Tables[0].Rows)
        {
            divs += @"  <div style="" position:relative; height:100px; width:400px; margin:10px auto;"">
                            <div style=""position:absolute; width:80px; height:80px; top: 10px; left: 130px;"">
                                 <a href=""#"" class=""screenshot"" rel=""images/"+item["namee"].ToString()+@".jpg"" ><img src=""images/" + item["namee"].ToString() + @".jpg"" width=""80px"" height=""80px""  /></a>
                        </div>";
            if(id < 1){
            divs += @"  <div style=""position:absolute; width:231px; left:240px; top:35px; height: 40px;"">
                                <p style="" margin-top:10px; margin-left:20px; ""><input type=""radio"" name=""SSRI"" value=""" + item["namee"].ToString() + @""" /></p>
                            </div>";
            }

            divs += @"<div style=""position:absolute; width:231px; left:100px; bottom:10px; height: 40px;"">

                            </div>
                        </div>";
        }
        Response.Write(divs);

このコードでアウトプットはこんな感じ

Images '' radio
Images '' radio

しかし、私はその出力がこのようにすべきであることを望んでいます

Images '' radio    Images '' radio
Images '' radio    Images '' radio

これを行うのを手伝ってくれる人はいますか。助けてください !

4

1 に答える 1

0

あなたの現在のコードがあなたが望むことをどのようにしようとしているかはわかりませんが、フローティング divを使用する必要があります。top leftとをすべて削除し、position:absoluteと だけを使用します。次に、新しい行に to を使用します。floatheightwidthclear:left;

たとえば、コードでは次のようになります。

int currLine = 0;
foreach (DataRow item in ds.Tables[0].Rows)
{
      if (currLine % 2 == 0)
      {
         // Every second item, move to a new line
         divs += @"<div style=""clear:float;"" />"
      }  

      divs += @"  <div style=""float:left;  width:400px; margin:10px auto;background:yellow;">
                        <div style=""width:80px; height:80px;background:red;""
                             <a href=""#"" class=""screenshot"" rel=""images/"+item["namee"].ToString()+@".jpg"" ><img src=""images/" + item["namee"].ToString() + @".jpg"" width=""80px"" height=""80px""  /></a>
                    </div>";
        if(id < 1){
        divs += @"  <div style=""width:231px;height: 40px;background:blue;"">
                            <p style="" margin-top:10px; margin-left:20px; ""><input type=""radio"" name=""SSRI"" value=""" + item["namee"].ToString() + @""" /></p>
                        </div>";
        }

        divs += @"<div style=""width:231px; height: 40px;background:green;"">

                        </div>
                    </div>";
    }
    Response.Write(divs);

backgrounds何が何をするのかをよりよく知ることができるように、さまざまな色を追加する自由を取りました..

于 2012-12-16T19:18:54.177 に答える