Materialise 框架:导航栏中的响应式徽标

Materialize framework: responsive logo in navbar

我正在使用 Materialize 框架创建一个网站。我在导航栏中遇到徽标问题。所以我的标志很大(6202x3800 像素)而且我没有任何其他版本。我想把这个标志放在导航栏中,但它总是超出 nav-wrapper 的框架。我尝试添加 class responsive-img 但它根本不起作用。

这是我的代码:

#allcontent {
  background-color: white;
  margin: 2%;
}
body {
  background: #d26335;
}
nav {
  color: black;
}
<div class="row" id="allcontent">
  <div class="navbar-default" id="navbar">
    <nav class="white">
      <div class="nav-wrapper">
        <a href="index.html" class="brand-logo left"><img class="responsive-img" id="logo" src="<!-- my image -->"/></a>
        <ul id="nav-mobile" class="right hide-on-med-and-down">
          <li><a href="sass.html"><i class="material-icons">search</i></a>
          </li>
          <li>colors</li>
        </ul>
      </div>

    </nav>
  </div>
</div>

你所要做的就是用CSS控制图像的大小到你想要的任何尺寸:

.navbar-material .nav-wrapper .brand-logo img {
    height: 64px;
}

或者使用图像编辑器将图像的大小调整为更适合徽标开始的尺寸。参见 Photoshop, GIMP or Sketch 等等。

(*绝对压缩图像;如果您不使用构建系统来执行此操作,那么总会有类似 TINYpng)

查看工作示例代码段。

(**注意所有使用的 classes 都是默认的 MaterialCSS 减去 .navbar-material class 看起来你在混合 Bootstrap3 class es 与 MaterialCSS classes)

$(".button-collapse").sideNav();
body {
  background: #d26335;
}
nav.navbar-material {
  background: #d26335;
  border: none;
  box-shadow: none;
}
.navbar-material .nav-wrapper {
  background: white;
  margin: 20px;
}
.navbar-material .nav-wrapper > ul > li > a {
  color: black;
}
.navbar-material .nav-wrapper .brand-logo img {
  height: 64px;
}
.navbar-material .nav-wrapper .button-collapse i {
  color: black;
}
@media (max-width: 600px) {
  .navbar-material .nav-wrapper .brand-logo img {
    height: 56px;
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.1/js/materialize.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.1/css/materialize.min.css" rel="stylesheet" />
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<nav class="navbar-material">
  <div class="nav-wrapper">
    <a href="#!" class="brand-logo">
      <img src="http://placehold.it/6202x3800/FF001E/fff">
    </a>
    <a href="#" data-activates="mobile-demo" class="button-collapse"><i class="material-icons">menu</i></a>

    <ul class="right hide-on-med-and-down">
      <li><a href="sass.html">Sass</a>

      </li>
      <li><a href="badges.html">Components</a>

      </li>
      <li><a href="collapsible.html">Javascript</a>

      </li>
      <li><a href="mobile.html">Mobile</a>

      </li>
    </ul>
    <ul class="side-nav" id="mobile-demo">
      <li><a href="sass.html">Sass</a>

      </li>
      <li><a href="badges.html">Components</a>

      </li>
      <li><a href="collapsible.html">Javascript</a>

      </li>
      <li><a href="mobile.html">Mobile</a>

      </li>
    </ul>
  </div>
</nav>