zoukankan      html  css  js  c++  java
  • 不定宽高元素居中

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<style type="text/css">
    			.box{
    				 200px;
    				height: 200px;
    				border: 1px solid #000000;
    			}
    			.cont{
    				padding: 50px;
    				background: red;
    			}
    			/*方法1
    			 * 最简单的flex布局,外层容器加上如下样式即可
    			 * 	display: flex;
    				justify-content: center;
    				align-items: center;
    			 * 
    			 * 兼容性:
    			IE:ie9以上加-ms-前缀
    			移动端:安卓4.2-4.3加-webkit-前缀
    					UC浏览器加-webkit-前缀*/
    			.box1{
    				display: -webkit-flex;
    				display: -moz-flex;
    				display: -o-flex;
    				display: -ms-flex;
    				display: flex;
    				justify-content: center;
    				align-items: center;
    			}
    			
    			/*方法2
    			 利用table-cell
    			 兼容性ie7以上支持
    			 * */
    			.box2{
    				display: table-cell;
    				text-align: center;
    				vertical-align: middle;
    			}
    			.cont2{
    				vertical-align: middle;
    				display: inline-block;
    				*display:inline;
    				*zoom:1;
    			}
    			/*方法3
    			使用CSS3 transform
    			 兼容性
    			 IE:ie8以上,ie9加-ms-前缀
    			 安卓4.3-4.4.4版本浏览器加-webkit-前缀
    			 	UC加-webkit-前缀
    			 
    			 * */
    			.box3{
    				position: relative;
    			}
    			.cont3{
    				position: absolute;
    				left: 50%;
    				top: 50%;
    				transform:translate(-50%,-50%);
    				-ms-transform:translate(-50%,-50%); 	/* IE 9 */
    				-moz-transform:translate(-50%,-50%); 	/* Firefox */
    				-webkit-transform:translate(-50%,-50%); /* Safari 和 Chrome */
    				-o-transform:translate(-50%,-50%); 	/* Opera */
    			}	
    			/*方法4js实现 兼容所有浏览器*/
    			.box4{
    				position: relative;
    			}
    			.cont4{
    				position: absolute;
    				left: 50%;
    				top: 50%;
    				border: 5px solid #000000;
    			}					
    		</style>
    	</head>
    	<body>
    		<!--方法1-->
    		<div class="box1 box">
    			<div class="cont1 cont">1</div>
    		</div>
    		<!--方法2-->
    		<div class="box2 box">
    			<div class="cont2 cont">2</div>
    		</div>
    		<!--方法3-->
    		<div class="box3 box">
    			<div class="cont3 cont">3</div>
    		</div>
    		<!--方法4-->
    		<div class="box4 box" id="box4">
    			<div class="cont4 cont" id="cont4">4</div>
    		</div>
    		<script type="text/javascript">
    			var cont4=document.getElementById("cont4");
    //			console.log(cont4.offsetHeight,cont4.clientHeight);                                   
    			
    			linCenter(cont4);
    			
    			function linCenter(obj){
    				obj.style.marginLeft="-"+obj.offsetWidth/2+"px";
    				obj.style.marginTop="-"+obj.offsetHeight/2+"px";
    			}
    			
    		</script>
    	</body>
    </html>
    

      

  • 相关阅读:
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    软件工程实践总结
  • 原文地址:https://www.cnblogs.com/yangxue72/p/7494213.html
Copyright © 2011-2022 走看看