<li> 水平排列问题


//for submenu
DataTable subcate = new BALCate().GetSubCate(cateid);
if (subcate.Rowsount > 0)
{
    div = new HtmlGenericControl("div");
    div.Attributes.Add("class", "sub-menu");
    HtmlGenericControl sul = new HtmlGenericControl("sul");
    foreach (DataRow sdr in subcate.Rows)
    {
        HtmlGenericControl sli = new HtmlGenericControl("sli");
        HtmlAnchor slink = new HtmlAnchor();
        slink.HRef = "#";
        slink.InnerHtml = sdr["subcate_name"].ToString();
        sli.Controls.Add(slink);
        sul.Controls.Add(sli);
    }
    div.Controls.Add(sul);
    li.Controls.Add(div);
 }
nav.Controls.Add(li);

。.aspx

<div class="categories">
<ul runat="server" id="nav">
<li class="home" style="background-repeat: no-repeat; background-color: #6FA907; background-image: url(home.jpg); background-position: center;"><a href="index.htm">Home</a></li>
<!--Dynamic menu-->
</ul>
</div>

请垂直排列这些 li s

任何人都可以解决此错误---下面解释

标签中的<li> </li>标签是否可以<ul> </ul>垂直方式???如果是,请告诉我 thnk u

// CSS
li { display : block; }

除了垂直是li元素的默认值,除非您已经在 CSS 中的其他地方取消设置了它。

您可以

将其设置为display: block;display: list-item;,这是默认值。

因此,您的 CSS 将是:

#nav li {display: block;}

#nav li {display: list-item;}

检查两者并使用适合的那个。 :)

最新更新