如何让子文件夹在HTML下拉菜单中显示?SharePoint部署问题求助
解决HTML下拉菜单子文件夹不显示的问题
我仔细看了你的代码片段和描述,问题根源出在HTML的层级嵌套错误上,和CSS无关——你把二级子菜单的<ul>直接放在了父级<li>的外面,浏览器无法识别它是HIPAA Security Office这个菜单项的子菜单,再加上你提到的标签未完全闭合,最终导致SharePoint渲染时只显示箭头,不加载子内容。
你的错误代码片段(问题部分)
<li><a href="#" target="_parent" class="hsolinksfly"><span class="down">HIPAA Security Office</span></a></li> <ul class="hsolinks"> <li><a href="#" target="_blank">Access</a></li> <li><a href="#" target="_blank">Audit</a></li> <li><a href="#" target="_blank">LAN File Access</a></li> <li><a href="#" target="_blank">Training</a></li> </ul>
修正后的代码结构
下拉菜单的标准嵌套逻辑是:包含子菜单的<li>内部,要先放菜单项的<a>标签,紧接着放置对应的子菜单<ul>,这样浏览器才能正确关联父子层级。同时要确保所有标签都正确闭合:
<li class="top"> <a href="#nogo4" id="hsolinks" class="top_link"><span class="down">Folders</span></a> <ul class="hsolinks"> <!-- 父菜单项:HIPAA Security Office --> <li> <a href="#" target="_parent" class="hsolinksfly"><span class="down">HIPAA Security Office</span></a> <!-- 二级子菜单:放到父li内部 --> <ul class="hsolinks"> <li><a href="#" target="_blank">Access</a></li> <li><a href="#" target="_blank">Audit</a></li> <li><a href="#" target="_blank">LAN File Access</a></li> <li><a href="#" target="_blank">Training</a></li> </ul> </li> </ul> </li>
关键修正点
- 把二级
<ul class="hsolinks">移动到HIPAA Security Office对应的<li>标签内部,成为它的直接子元素 - 补全所有未闭合的
<ul>和<li>标签(你之前提到只关闭了一个ul,这会导致DOM结构混乱)
SharePoint对HTML的规范性要求比较严格,不标准的嵌套结构很容易被它的渲染引擎忽略,修正结构后,你的子菜单应该就能正常显示了。
内容的提问来源于stack exchange,提问作者dcsolina
相关产品推荐
相关产品推荐

