html – CSS动态水平导航菜单填写特定宽度(表行为)

前端之家收集整理的这篇文章主要介绍了html – CSS动态水平导航菜单填写特定宽度(表行为)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要创建一个具有不断变化的项目数量的水平导航菜单(这很重要 – 我不能将宽度粗加到CSS中,我不想用JS计算它们),填充到一定宽度,让我们说800px.

与表,

  1. <table width="800" cellspacing="0" cellpadding="0">
  2. <tr>
  3. <td>One</td>
  4. <td>Two</td>
  5. <td>Three</td>
  6. <td>Four</td>
  7. <td>Five Seven</td>
  8. </tr>
  9. </table>
  10.  
  11. <style>
  12. table td {
  13. padding: 5px 0;
  14. margin: 0;
  15. background: #fdd;
  16. border: 1px solid #f00;
  17. text-align: center;
  18. }
  19. </style>

请注意,较长的项目占用更多的空间,我可以在HTML中添加项目,而无需更改CSS中的任何内容,并且菜单项缩小以适应其他项目 – 整个菜单永远不会缩短或超过800像素.

由于菜单不是语义上正确的使用表,可以用列表和纯CSS来完成吗?

@H_301_10@

解决方法

browsers that support the table display CSS规则中,是的:
  1. <style>
  2. nav {display:table; width:800px; background:yellow}
  3. ul {display:table-row; }
  4. li {display:table-cell; border:1px solid red}
  5. </style>
  6.  
  7. <nav>
  8. <ul>
  9. <li>One</li>
  10. <li>Two</li>
  11. <li>Three</li>
  12. <li>Four</li>
  13. <li>Five Seven</li>
  14. </ul>
  15. </nav>

基本上,你必须建立一个令牌表.行动:http://jsbin.com/urisa4

否则:不,如果你不能妥协你的要求.

@H_301_10@ @H_301_10@

猜你在找的HTML相关文章