调整浏览器大小时文本重叠

时间:2017-05-19 14:48:21

标签: html css css3

我发现了这个漂亮的标题> https://codepen.io/rm/pen/ldhon < ,但是当我调整窗口大小时,文本会重叠。在这个演示中,你必须调整窗口的大小,但问题是当字体大小较大或菜单中有更多文本时,它会比本演示更快地重叠。

HTML:

<div class="container">
  <ul>
    <li class="one"><a href="#">Uno</a></li><!--
 --><li class="two"><a href="#">Dos</a></li><!--
 --><li class="three"><a href="#">Tres</a></li><!--
 --><li class="four"><a href="#">Quatro</a></li>
    <hr />
  </ul>
</div>

CSS:

* {
  box-sizing: border-box;
}

body {
  font: 300 100% 'Helvetica Neue', Helvetica, Arial;
}

.container {
  width: 50%;
  margin: 0 auto;
}

ul li {
  display: inline;
  text-align: center;
}

a {
  display: inline-block;
  width: 25%;
  padding: .75rem 0;
  margin: 0;
  text-decoration: none;
  color: #333;
}

.two:hover ~ hr {
  margin-left: 25%;
}

.three:hover ~ hr {
  margin-left: 50%;
}

.four:hover ~ hr {
  margin-left: 75%;
}

hr {
  height: .25rem;
  width: 25%;
  margin: 0;
  background: tomato;
  border: none;
  transition: .3s ease-in-out;
}

有人可以帮我这个吗?

3 个答案:

答案 0 :(得分:0)

通过为容器提供100%的宽度并且容器内的每个元素具有相等的宽度来填充容器以及应用一些填充以使事物不能一起运行,我能够实现您所需要的。试试这个:

.container {
  width: 100%;
  margin: 0 auto;
}

ul li {
  display: inline;
  text-align: center;
  padding: 0 20px;
}

a {
  display: inline-block;
  width: 20%;
  padding: .75rem 0;
  margin: 0;
  text-decoration: none;
  color: #333;
}

答案 1 :(得分:0)

在无序列表上使用flexbox并将其包装以防屏幕缩小。删除锚标记上的内联显示。

&#13;
&#13;
* {
  box-sizing: border-box;
}

body {
  font: 300 100% 'Helvetica Neue', Helvetica, Arial;
}

.container {
  width: 50%;
  margin: 0 auto;
}

ul{
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  list-style: none;
}

a {
  
  width: 25%;
  padding: .75rem 0;
  margin: 0;
  text-decoration: none;
  color: #333;
}

.two:hover ~ hr {
  margin-left: 25%;
}

.three:hover ~ hr {
  margin-left: 50%;
}

.four:hover ~ hr {
  margin-left: 75%;
}

hr {
  height: .25rem;
  width: 50%;
  margin: 0 auto;
  background: tomato;
  border: none;
  transition: .3s ease-in-out;
}
&#13;
<div class="container">
  <ul>
    <li ><a href="#">Uno</a></li>
   <li ><a href="#">Dos</a></li>
   <li ><a href="#">Tres</a></li>
   <li ><a href="#">Quatro</a></li>
    
  </ul>
  <hr />
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

  1. 将容器宽度设置为100%。

  2. 还删除了ul padding,因此它占据了整个100%的宽度。

  3. 删除了身体边缘。

  4. &#13;
    &#13;
    * {
      box-sizing: border-box;
    }
    
    body {
      font: 300 100% 'Helvetica Neue', Helvetica, Arial;
      margin: 0;
    }
    
    .container {
      width: 100%;
      margin: 0 auto;
    }
    
    ul li {
      display: inline;
      text-align: center;
    }
    
    a {
      display: inline-block;
      width: 25%;
      padding: .75rem 0;
      margin: 0;
      text-decoration: none;
      color: #333;
    }
    
    .two:hover~hr {
      margin-left: 25%;
    }
    
    .three:hover~hr {
      margin-left: 50%;
    }
    
    .four:hover~hr {
      margin-left: 75%;
    }
    
    hr {
      height: .25rem;
      width: 25%;
      margin: 0;
      background: tomato;
      border: none;
      transition: .3s ease-in-out;
    }
    
    ul {
     padding: 0;
    }
    &#13;
    <div class="container">
      <ul>
        <li class="one"><a href="#">Uno</a></li><!--
     --><li class="two"><a href="#">Dos</a></li><!--
     --><li class="three"><a href="#">Tres</a></li><!--
     --><li class="four"><a href="#">Quatro</a></li>
        <hr />
      </ul>
    </div>
    &#13;
    &#13;
    &#13;