【问题标题】:How to align two <div> tags horizontally in the same line inside a main <div> tag? [duplicate]如何在主 <div> 标签内的同一行中水平对齐两个 <div> 标签? [复制]
【发布时间】:2013-12-27 07:21:57
【问题描述】:

我正在尝试在主 &lt;div&gt; 中使用两个 &lt;div&gt; 元素。但问题是,在第一个&lt;div&gt; 中,我使用了&lt;image&gt; 控件,并且我正在从数据库中获取一些文本数据。在第二个&lt;div&gt; 中,我使用的是&lt;gridview&gt;。但我无法在同一行水平显示这两个&lt;div&gt; 元素。

我试过这样做:

<div style="width:1000px;overflow:hidden; height:auto; float:left; text-align:justify; margin-bottom:15px;">
    <div id="right part" runat="server" style="width:auto; float:left; margin:0 12px 12px 0;">
        <asp:Image ID="Image1" runat="server" Height="122px" Width="148px" /><% =details %></div>
    <div id="left part" runat="server" style="float:left;width:auto;display:inline-block;">
        <asp:GridView ID="GridView1" runat="server" ShowHeader="False" 
                      ForeColor="Black" GridLines="None" EnableModelValidation="True" 
                      onpageindexchanging="GridView1_PageIndexChanging" onrowcreated="GridView1_RowCreated">
        </asp:GridView>    
    </div>
</div>

如果我做错了什么,请建议我?

【问题讨论】:

  • 尝试将 width:auto 更改为 width:50%;
  • float:right; 设置为第二个 div

标签: html css


【解决方案1】:

css

显示:内联块

添加div 右侧部分左侧部分 css

【讨论】:

    【解决方案2】:

    将“右侧部分”div float 设置为 right。请检查,您在 id 选择器中使用了不正确的空格。

    【讨论】:

      【解决方案3】:

      这是一种在同一行上获取右对齐和左对齐文本的简单方法。

      CSS

      .alignleft {
          float: left;
      }
      .alignright {
          float: right;
      }
      

      HTML

      <div id="textbox">
        <p class="alignleft">Text on the left.</p>
        <p class="alignright">Text on the right.</p>
      </div>
      

      【讨论】:

        【解决方案4】:

        您的代码应该将 div 对齐在一行中... see here

        width:auto; float:left; 只会将内容宽度作为 div 宽度,所以 它会 总是内联,只要总 宽度 。

        一个更简单的建议是使用百分比作为宽度,这样您就不需要inline 显示。

        此外,idv #. 的名称不包含空格,它们应该是一个单词(请注意我对您的 id 名称所做的更改

        demo

        html, body {
            width:100%;
            height:100%;
        }
        #main {
            width:100%;
            height:100%;
            float:left;
            text-align:justify;
            margin-bottom:15px;
        }
        #right_part {
            width:49%;
            float:left;
            border:1px solid #000;
        }
        #left_part {
            border:1px solid #000;
            float:left;
            width:49%;
            display:inline-block;
        }
        

        【讨论】:

        • 嗨@NoobEditor,是的,这就是我对这个问题感到困惑的原因。实际上还有一个问题,我将图像和我从数据库中获取的细节保存在一个div和gridview中位于第 2 格。但在大多数情况下,我获取的详细信息不会显示在页面上。而显示gridview。
        • 主div的宽度是1000px,我把这两个div放在了父div里面。我想现在问题出在两个 div 的宽度上。我也尝试过 width=auto;选项,但在这种情况下,这两个 div 的对齐会生效。
        • 如果宽度的数量是固定的(如果它们只有 2 个),那么将 width:500px 分配给两个子 div,这将对他们有所帮助,请参见此处的 jsfiddle。 net/9a3tH/6/ ...也不是width=auto,而是width:auto
        • @user2862233 :至于您的图像和数据...不是 ASP 的人...您必须首先检查数据是否出现在页面上...查看页面源,看看是否有需要的数据!
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-05
        • 2011-01-25
        • 1970-01-01
        • 2011-04-27
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多