【问题标题】:Show first image and display none other image显示第一张图像并显示其他图像
【发布时间】:2015-02-25 14:31:04
【问题描述】:

我有一个关于显示图像的问题。我从 codepen.io

创建了这个 DEMO

在这个演示中你可以看到有两个.image_container div。这个div里面有树形图像。第一个 div 显示树图像,第二个 div 仅显示一个图像(其他 2 个图像 display:none;)。我想让它像第二个.image_container (显示第一张图片和display:none; 其他两个或更多图片。)我怎样才能做到宽度 jquery 或 CSS 任何人都可以在这里帮助我?

我试过这个 javascript 但它是 display:none;其他.image_container div 内图。

javascript

$(".image_container a:first-child").css("display", "block");

HTML

 <div class="container">
      <div class="image_container">
        <a href="#"><img src="http://fantasy-faction.com/wp-content/uploads/2014/04/Avatar.jpg"</a>
          <a href="#"><img src="http://upload.wikimedia.org/wikipedia/en/3/38/Avatarjakeneytiri.jpg"</a>
            <a href="#"><img src="http://fc09.deviantart.net/fs70/f/2010/015/8/9/Cristiano_Ronaldo_avatar_by_Tsunamy_boy.png"</a>
      </div>
      <div class="image_container">
         <a href="#"><img src="http://fantasy-faction.com/wp-content/uploads/2014/04/Avatar.jpg"</a>

          <a href="#" class="none"><img src="http://upload.wikimedia.org/wikipedia/en/3/38/Avatarjakeneytiri.jpg"</a>
            <a href="#" class="none"><img src="http://fc09.deviantart.net/fs70/f/2010/015/8/9/Cristiano_Ronaldo_avatar_by_Tsunamy_boy.png"</a>
            <div clas="need">Want to make like this</div>  
      </div>
    </div>

CSS

    body {
      background-color:#000;
    } 
    .container {
      margin:0px auto;
      width:650px;
      height:auto;
      margin-top:50px;
    }
    .image_container {
      float:left;
      width:300px;
      background-color:#ffffff;
      border-radius:3px;
      padding-bottom:30px;
      margin-right:20px;
    }
    .image_container  img {
      width:300px;
      height:auto;
    }
    .none {
      display:none;
    }
    .need {
      float:left;
      width:300px;
      background-color:red;
    }
.image_container a{display:none;}

【问题讨论】:

  • 我对你的问题感到困惑。你的最终目标是什么?
  • @dowomenfart 我想让它像DEMO 页面中的第二张图片。
  • @dowomenfart 显示第一张图片并显示:没有其他 2 张图片。
  • 你可以试试这个.image_container a{display:none;}.image_container a:first-child{display:block;}

标签: javascript jquery css image


【解决方案1】:

我猜你的测试几乎是对的。

您的问题不是 CSS 或 JavaScript,而是 HTML 本身,它们是 img 标签格式不正确。它们是&lt;img src="path_to_image",但应该是img 标签格式不正确。他们是&lt;img src="path_to_image"&gt;(注意关闭&gt;)。

由于您的 HTML 格式不正确,我不会假设选择浏览器定义的元素所需的规则。

但修复 HTML 会得到符合您想要的结果。

【讨论】:

  • 那么有多少张图片display:none; 我可以用 JavaScript 做到吗?喜欢在这篇文章中还有其他 2 张图片点击查看.. 分机。
  • 任何数字...你想创建类似this的东西吗?