如何使可变大小的图像居中

时间:2012-06-24 21:36:42

标签: javascript html css

这应该很容易,我已经对此做了一些研究。我拼接了来自hereherehere和其他地方的代码,但我无法让它发挥作用。

我有一个网页,其中3个.pngs叠加在一起。前两个是可变大小的,并且是页面的100%。顶部有一个洞(它在中间是透明的),中间消失,使用Javascript来显示底部的一个。前两个.png和Javascript工作正常。

我希望底部图像在垂直和水平方向的正中心,并与页面大小成比例。我可以让它居中,或成比例,但不是两者兼而有之。我不能把底部图片作为背景,因为那时背景不是正确的颜色,或者它是平铺的。

以下是一些代码的示例:

HTML:

<body>  
        <div >
    <p0 id="face" ><img src="face2.png"; class='face'> </p0>
</div>
        <p1 id="circuit" > <img src= 'circuit.png' width = '100%' height = '100%' /> </p1>
        <p2 id="hole" ><img src="hole.png" width='100%' height = '100%' /> </p2>
</body>

CSS:

p0{ 
width: 50%;/*I can't set the height to 50% because it is a different size than the width*/
center
z-index:1;
position: absolute; 
}

p1{
z-index: 2;
width: 100%;
padding:0;
margin: 0;
height:100%;
position: absolute; 
}

p2{
z-index:3;
width: 100%;
padding:0;
margin: 0;
height:100%;
position: absolute; 
}

1 个答案:

答案 0 :(得分:0)

将您想要居中的所有内容放入包含以下内容的div:

   .div{
     width: 100%;
     position: relative; // or absolute
     text-align: center;
     text-align: -moz-center;
     text-align: -webkit-center;
     }

这是一个链接jsfiddle

这里是完整的CSS:正如问题所述,两个图像在彼此顶部的确切中心是不同的大小,

.parent{
 width: 100%;
 position:  absolute;
 text-aligh: -align: center;
 text-align: -moz-center;
 text-align: -webkit-center;

 }

.center1{

height:120px;
width: 275px;    
background-image: url("http://www.google.com/images/srpr/logo3w.png");
}

.center2{       
height: 100px;
width: 200px;
 background-image: url("http://www.google.com/logos/2012/turing-doodle-static.jpg");
}

HTML:

     <div class="parent" style="z-index: 1;">
         <div class="center1"></div> 
     </div>
     <div class="parent" style="z-index: 10;">
         <div class="center2"></div> 
     </div>