Why a radiobuttonlist always take a new row?

2019-04-19 09:34发布

问题:

This is a question about layout. I'm developing a .net page, whenever I add a radiobuttonlist right after a label, it comes down to next row. But in the code side, it still within the same row. The problem is if you browse it in IE, it comes down to the next row. I am sure the width of both label and radiobuttonlist is not oversized. What's the reason and how to resolve this issue? Thanks in advance.

回答1:

RadioButtonList by default renders as table. You can change set the property RepeatLayout="Flow" and it will be rendered in span.

RepeatLayout Property

Different ways it can render



回答2:

Add a property to your radiobuttonlist

RepeatDirection="Horizontal"

   <asp:RadioButtonList RepeatDirection="Horizontal" 
        ID="RadioButtonList1" runat="server" style="display:inline">
        <asp:ListItem>asdf</asp:ListItem>
        <asp:ListItem>sdfg</asp:ListItem>
    </asp:RadioButtonList>

this will solve your problem. CHEERS



回答3:

You can set it's display style to be inline:

<asp:RadioButtonList
    ID="RadioButtonList1" runat="server" style="display:inline">
    <asp:ListItem>asdf</asp:ListItem>
    <asp:ListItem>sdfg</asp:ListItem>
</asp:RadioButtonList>

Warning: Purists will scream that information should be in a CSS class somewhere else.



回答4:

if you have apply css on page, then it is hard to maintain style of radiobuttonlist.

Mine was fix with below code

#radiobuttonlist label
{
   vertical-align: super;
}