css+div上下左右自適應居中


主要記錄自己日常積累的布局相關的東西,持續更新中。

1.登錄框上下左右自適應居中

以前想要把登錄表單始終放置在頁面的中間,花了不少心思,一直以來用的解決方法都是用js,感覺有點麻煩不是很好,於是在網上查詢了一下發現了一種比較的實現方法。

原理就是用position:absolute,然后用left:50%,top:50%,現在登錄表單左側直角是在頁面的中間了,但是登錄框本身還有寬度和高度,所以我們再用margin-left:-登錄框寬度,margin-top:-登錄框高度,就可以讓登錄框顯示在頁面的正中間了。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width" />
	<title>登錄框自適應居中</title>
	<style>
	#LoginContainer {
		position: absolute;
		width:400px;
		height:200px;
		left:50%;
		top:50%;
		margin-left:-200px;
		margin-top:-100px;
		border:1px solid #ccc;
	}
	</style>
</head>
<body>
	<div id="LoginContainer">
	這是登錄框
	</div>
</body>
</html>

  

很多問題的解決方法都不止一種,還是要多學習多交流啊。

2.左右布局,左側固定寬度,右側自適應寬度

原理就是左側div固定寬度+float,然后右側的div設置左間隔左側div寬度的距離就可以了(margin-left:左側div的寬度)

<style type="text/css">
    html, body { padding: 0px; margin: 0px; height: 100%; overflow: hidden; }
    .container { height: 100%; border: 1px solid #ccc; min-width: 600px; }
        .container .west { border-right: 1px solid #ccc; height: 100%; width: 200px; float: left; }
        .container .content { height: 100%; margin-left: 200px; }
</style>

<div class="container">
    <div class="west">west</div>
    <div class="content">content</div>
</div>

 3.利用translate(-50%, -50%)居中(紅色為關鍵部分)

  position: fixed;
  min-width: 100px;
  color: #fff;
  border-radius: 2px;
  background-color: rgba(0, 0, 0, 0.6);
  padding: 10px 5px;
   top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM