2013-10-02 27 views
-1

如何讓複選框列表顯示在標籤的右側?如何將CheckBoxList放在其標籤的右側? CheckBoxList的寬度是多少?

的下拉列表出現在它的標籤的右側,用類似的代碼,但CheckBoxList的出現在標籤之下:

<p> 
    <asp:Label ID="lblTestVersions" runat="server" Text="Toetsversie:" AssociatedControlID="DropDownListTestVersions"></asp:Label> 
    <asp:DropDownList ID="DropDownListTestVersions" runat="server" Width="250" TabIndex="1" > 
    </asp:DropDownList> 
</p> 
<p> 
    <asp:Label ID="lblTests0" runat="server" Text="Opties:"></asp:Label> 
    <asp:CheckBoxList ID="CheckBoxList1" runat="server" TabIndex="2" Width="200"> 
     <asp:ListItem Width="200">Option 1</asp:ListItem> 
     <asp:ListItem Width="200">Option 2</asp:ListItem> 
    </asp:CheckBoxList> 
</p> 

我試圖限制CheckBoxList的寬度與幾個Width="200"但這並沒有幫助。


答案(見下文)是CheckBoxList實際上是一個表,並且會一直到下一行。

回答

1

只要嘗試使用HTML表格,只需將標籤保存在一個td中,並將複選框列表中的另一個td

+0

謝謝,我知道有許多辦法來解決問題,但我試着去理解每個元素都有一定寬度的盒子模型。不知何故,在我看來,解決我的對齊問題最簡單的方法可能不需要一張表。爲什麼下拉列表很容易對齊? – Roland

+1

當一個dropdownlist從服務器獲取渲染..它轉換爲一個選擇標記..但作爲一個複選框列表總是呈現爲一個表中的輸入標籤在它.hence我們得到複選框列表在一個新的行...爲什麼你不知道在瀏覽器中查看您的文件的來源..有一個gr8日amigo! –

+0

好點。我不如放棄CheckboxList,並用複選框項目製作我自己的表格。然後它在標題等方面更加靈活。 – Roland

0

CSS:

#lblTests0 { float: left; display:block; width: 100px; } 

例子:

<p> 
    <label id="lblTests0">Opties:</label> 
    <table id="check1"> 
     <tbody> 
      <tr> 
       <td><input id="check1_0" type="checkbox" name="check1$0" value="Item 1"><label for="check1_0">Item 1</label></td> 
      </tr> 
      <tr> 
       <td><input id="check1_1" type="checkbox" name="check1$1" value="Item 2"><label for="check1_1">Item 2</label></td> 
      </tr> 
     </tbody> 
    </table> 
</p> 

預覽可以在這裏找到http://jsfiddle.net/NMWGh/

+0

TextAlign默認設置爲Right。將其更改爲「左」會導致CheckBox項目發生更改,以便每個複選框的文本顯示在複選框的左側。顯然,TextAlign在項目上工作,而不是整個複選框列表。我的問題是關於複選框列表旁邊的標籤,而不是關於列表中每個單獨複選框的文本。 – Roland

+0

我看到你的後續工作是否解決了你正在努力完成的任務。 –