CSS Navbar内容缩放

时间:2016-05-26 09:27:24

标签: html css web nav

您好,我只是想知道缩放导航栏的最佳方法是什么,以便框的大小相对于屏幕宽度?

试着让它有点反应。感谢

Full screen

Pressed F12 to reduce width of screen

这是CSS:

body {
  background-image: url("background2.jpg");
}
#navbar ul {
  padding: 5px;
  list-style-type: none;
  text-align: center;
  margin-left: 5%;
}
#navbar ul li {
  display: inline;
  float: left;
}
#navbar a:link {
  text-decoration: none;
  padding: 15px 162.5px;
  margin-left: auto;
  margin-right: auto;
  width: auto;
  color: white;
  background-color: #003333;
  font-size: 25px;
  font-family: Courier New;
}
#navbar ul li a:hover {
  color: black;
  background-color: #c2d6d6;
  text-decoration: line-through;
}
#navbar {
  background-color: #003333;
  width: 100%;
  height: 68px;
  border-radius: 15px;
}
a {
  display: block;
  width: 100px;
  background-color: #003333;
  transition-duration: 1s;
}
#navbar #currentpage a {
  color: black;
  text-decoration: line-through;
  background-color: #c2d6d6;
}

[编辑]感谢您的所有答案!

4 个答案:

答案 0 :(得分:3)



body {
  background-image: url("background2.jpg");
}
a {
  display: block;
  background-color: #003333;
  transition-duration: 1s;
}
#navbar {
  background-color: #003333;
  border-radius: 15px;
  overflow: hidden;
}
#navbar ul {
  list-style-type: none;
  text-align: center;
  table-layout: fixed;
  display: table;
  padding: 0;
  width: 100%;
  margin: 0;
}
#navbar ul li {
  vertical-align: middle;
  display: table-cell;
}
#navbar a {
  text-decoration: none;
  color: #fff;
  padding: 15px 10px;
  background-color: #033;
  font-size: 25px;
  font-family: Courier New;
}
#navbar ul li a:hover {
  color: black;
  background-color: #c2d6d6;
  text-decoration: line-through;
}

#navbar #currentpage a {
  color: black;
  text-decoration: line-through;
  background-color: #c2d6d6;
}

<nav id="navbar">
   <ul>
     <li><a href="#">Home</a></li>
     <li><a href="#">Biography</a></li>
     <li><a href="#">Gallery</a></li>
     <li><a href="#">Events</a></li>
  </ul>
</nav>
&#13;
&#13;
&#13;

答案 1 :(得分:2)

你可以试试CSS3 vh和vw单位

详细信息请查看链接

检查这个

css3 units

viewport-sized-typography

viewport-units-vw-vh-vmin-vmax

答案 2 :(得分:2)

如果您想要缩放菜单,我会使用视口相对单位(vw表示宽度,vh表示高度,两者都作为视口大小的百分比)。

您还可以尝试使用CSS transform: scale()函数和\或zoom属性。

请注意,两者仍然是工作草稿(尽管现代浏览器广泛支持)。

为了响应,我会向您发送有关@media queries的更多信息。

答案 3 :(得分:2)

<!DOCTYPE html>
<html>
<head>
<title>equal width</title>

<style type="text/css">
html { font: 0.75em/1.5 sans-serif; }
.tabs { margin:  0; padding: 0; list-style: none; display: table; table-layout: fixed; width: 100%; }
.tabs__item { display: table-cell; } 
.tabs__link { display: block; }
.primary-nav { text-align: center; border-radius: 4px; overflow: hidden; }
.primary-nav a { padding: 1em; background-color: #BADA55; color: #fff; font-weight: bold; text-decoration: none; }
.primary-nav a:hover { background-color: #A3C43B; }
</style>
</head>

<body>
  <ul class="tabs  primary-nav">
    <li class="tabs__item">
        <a href="#" class="tabs__link">Home</a>
    </li>
    <li class="tabs__item">
        <a href="#" class="tabs__link">About</a>
    </li>
    <li class="tabs__item">
        <a href="#" class="tabs__link">Work</a>
    </li>
    <li class="tabs__item">
        <a href="#" class="tabs__link">Contact</a>
    </li>
</ul>  
</body>
</html>