首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用css调整img大小,特别是使用flexbox

如何使用css调整img大小,特别是使用flexbox
EN

Stack Overflow用户
提问于 2021-03-30 00:39:02
回答 2查看 33关注 0票数 0

我试着用flexbox把3张图片放在同一行。我也想改变第一张图片的大小,因为它太大了。但是,我的CSS规则没有正确应用。我将图像放在它们自己的div中,每个div都有一个flex-item-3类,表示它们是flex容器中的flex项。但是,我似乎不能覆盖默认的CSS规则。

代码语言:javascript
复制
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  font-family: 'Lato', 'sans-serif', 'arial';
  color: #fff;
  font-size: 15px;
  font-weight: 300;
  text-transform: uppercase;
  text-rendering: optimizeLegibility;
}

.wrapper {
  max-width: 100%;
  margin: 0 auto;
}

section {
  padding: 80px 0;
}

h2 {
  margin: 0;
  padding: 0;
}

.flex {
  display: flex;
  justify-content: space-between;
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url("img/truck.jpg");
  background-size: cover;
  background-position: center;
}

.flex-item {
  padding-top: 15px;
  height: 100vh;
}

.item1 {
  padding-top: 0;
  padding-left: 30px;
}

.logo {
  height: 90px;
}

.main-nav ul {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.main-nav a {
  color: white;
  padding: 1rem;
  text-decoration: none;
}

.main-nav a:hover {
  color: orange;
}

.hero {
  position: absolute;
  top: 50%;
  left: 25%;
  transform: translate(-50%, -50%);
}

.hero a {
  text-decoration: none;
  color: white;
  display: block;
  margin: 10px;
  padding: 10px;
  border-radius: 10px;
}

.btn {
  background-color: orange;
}

.flex2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flex-item-2 {
  color: #312c2c;
  width: 100%;
  text-align: center;
}

.second-flex-item p {
  margin-top: 20px;
  margin-bottom: 40px;
  font-size: 19px;
  color: #312c2c;
}

.second-flex-item h2 {
  font-weight: 900;
  font-size: 25px;
}

.flex-3 {
  display: flex;
  justify-content: center;
  max-width: 100%;
}

.flex-3-items {
  display: flex;
  width: 100%;
  height: auto;
}
代码语言:javascript
复制
<body class="wrapper">

  <header class="flex">
    <div class="flex-item item1">
      <img src="Resources/img/moBurgerzLogo.png" class="logo">
    </div>
    <nav class="flex-item main-nav">
      <ul>
        <li><a href="#">Our Story</a></li>
        <li><a href="#">Locations</a></li>
        <li><a href="#">Menu</a></li>
        <li><a href="#">Order now</a></li>
      </ul>
    </nav>
    <div class="hero">
      <h2>Best Burgers <br> In DA City(D.C)</h2>
      <a href="#" class="btn" btn-full>Order now!</a>
      <a href="#" class="btn" btn-ghost>View Menu!</a>
    </div>

  </header>

  <section class="flex-2">
    <div class="flex-item-2 second-flex-item">
      <h2>Established in 2017 in D.M.V</h2>
      <p class="story"> moBurgerz was founded in 2017 by owner Mahamed Ibrahim.<br> Since then we have been serving the best hand crafted burgers in the D.M.V.<br>All our meat is halal and all of our ingridients are organic.</p>
      <img src="Resources/img/white_truck.jpeg" class="truck-img">
    </div>

  </section>

  <section class="flex-3">

    <div class="flex-3-item meal-photos photo-1">
      <img src="Resources/img/cheeseSteak.jpg">

    </div>

    <div class="flex-3-item meal-photos">
      <img src="Resources/img/goodMoanin.jpeg">
    </div>


    <div class="flex-3-item meal-photos">
      <img src="Resources/img/moGul.jpeg">
    </div>

  </section>
</body>

EN

回答 2

Stack Overflow用户

发布于 2021-03-30 00:56:07

.flex-3-item img { max-width:100%; }应该可以做到这一点。

还有,看看这个:Auto Resize Image in CSS FlexBox Layout and keeping Aspect Ratio?

票数 0
EN

Stack Overflow用户

发布于 2021-03-30 00:59:51

尝尝这个

代码语言:javascript
复制
.logo {
  width: 100%;
  height: auto;

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66858121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档