在响应式网站上居中显示长水平图像(带/链接)

时间:2014-11-30 22:41:55

标签: responsive-design center

感谢您的时间。我是一名试图进入编码的设计师,但感到非常沮丧,哈哈。

我正在尝试创建一个响应式网页,因此我创建了一个非常长的图形,主要信息位于中间。我试图将这个图形居中,这样无论浏览器窗口有多大/多宽,它仍然具有图形显示的中间位置。

    <div class= "container">
    <div id="main">
    <img src="maingreenlong.png"/>
    </div>
    </div>

   #main {}

   .container
   {
  position: relative;
  width: 100%;
  overflow: hidden;
  }

我有一个包含div.main的div.container,因为我在另一个问题上看到它,但它不起作用:(

这可能毫无意义;请访问我的网站http://www.jhydesigns.com(向右滚动),您将能够看到我想要做的确切内容。我创建的长图像只使我的网站真的很长......也许这是另一个问题感叹lol。

先谢谢大家!

1 个答案:

答案 0 :(得分:0)

此网站根本没有响应。您可能需要查看一些教程,了解:

  • 流体设计
  • 元视口标记(用于触摸设备)
  • HTML5
  • 响应式设计(首先是移动设备,第一个是桌面设备,为什么)
  • 如果您计划支持IE8,则回复.js
  • basic jquery
  • 定位,浮动,显示和所有css基础
  • 响应式图片
  • 背景尺寸选项
  • 箱上浆
  • 视网膜图像
  • 可访问

列表继续......

这是移动优先的CSS。您将SHARED,GLOBAL样式放在媒体查询之外,并将较大视口中的样式放在最小宽度中。您可以根据您的设计选择最小宽度,使其具有流动性和中间尺寸(因为设备有许多尺寸,看起来很好。

如果您计划使用汉堡包(三行)或尝试最好并发布新的SO问题,您将需要了解如何切换导航。

DEMO:https://jsbin.com/siyawe/1/

<强> CSS

body,
html {
    margin: 0;
    padding: 0;
    background: #fff;
    font: 1em/1.8 sans-serif;
}
*,
*:before,
*:after {
    box-sizing: border-box
}
.featurette {
    width: 100%;
    clear: both;
    height: 0;
    padding-top: 40%;
    background: url(http://www.jhydesigns.com/maingreenlong.png);
    background-size: cover;
    background-position: 50% 50%;
}
.header {
    text-align: center
}
.header .nav ul {
    margin: 0;
    padding: 3% 0 0 0;
    position: relative;
    list-style: none;
    clear: both;
}
.header .nav a {
    text-decoration: none;
    padding: 10px;
    color: #000;
    display: block;
}
.header {
    padding: 3% 5% 0;
    position: relative;
}
.header img {
    max-width: 150px;
    width: 100%;
    display: block;
    margin: 0 auto 5%;
}
@media (min-width:400px) { 
    .header .logo {
        float: left
    }
    .header .social {
        float: right
    }
    .header .nav li {
        display: inline-block
    }
    .header img {
        margin: 0
    }
}
@media (min-width:600px) { 
    .header {
        display: table;
        width: 100%;
        padding: 3% 5%;
    }
    .header .logo,
    .header .social {
        display: table-cell;
        width: 50%;
        vertical-align: middle;
        float: none;
    }
    .header .social {
        text-align: right
    }
    .header .nav {
        position: absolute;
        bottom: -50px;
        left: 5%;
    }
    .header .nav a {
        color: #fff;
        display: inline-block;
        padding: 5px 10px;
    }
    .header .nav ul {
        left: -10px;
        padding: 0;
    }
    .header .nav li {
        display: inline-block
    }
    .featurette {
        padding-top: 30%
    }
}
.footer {
    clear: both;
    background: #000;
    color: #ddd;
    padding: 3% 5%;
    text-align: center;
}
@media (min-width:400px) { 
    .footer {
        text-align: right
    }

}

@media (min-width:1000px) { 
    .featurette {
        padding-top: 20%
    }
}  

<强> HTML

  <header class="header">
     <a href="#" class="logo"><img src="http://www.jhydesigns.com/Logo.png" alt="" /></a>
     <div class="social">
        X X stuff
     </div>
     <nav class="nav">
        <ul role="navigation" role="navigation">
           <li><a href="#">Link</a></li>
           <li><a href="#">Link</a></li>
           <li><a href="#">Link</a></li>
           <li><a href="#">Link</a></li>
           <li><a href="#">Link</a></li>
        </ul>
     </nav>
  </header>
  <div class="featurette" ><!-- background image --></div>
  <footer class="footer">footer</footer>