2.栅格布局

    字进行页面开发,最头疼的问题在于:页面写完了,发现换个浏览器不支持了(显示风格瞬间改变).


        如果要真想实现栅格,那么就必须有一个可以容纳第一个栅格的行,而多个栅格行最终就组成了一个页面.在整个bootstrap之中最多只能够存在有12个栅格


        如果现在是一个宽容器的窗口,那么整个栅格都会按照宽屏幕的方式完整显示显示,而到了窄屏的页面,那么会自动改变现实的风格.

栅格布局的基础实现

        如果要想实现栅格布局,主要是通过四个样式完成的:col-lg-*(大型设备),col-md-*(中型设备),col-sm-*(小型 设备),col-xs-*(极小型设备),不同的样式主要应用在不同的设备的屏幕宽度上.

        但问题是,我们如何确定要使用的是何种栅格呢?bootstrap会自动检测

@media (min-width:768px) {   ->最低为768像素的设备
	.container {
		width: 750px
	}
}

@media (min-width:992px) {    ->最低为992像素设备

	.container {        
		width: 970px
	}
}

@media (min-width:1200px) {    ->最低为1200像素设备
	.container {
		width: 1170px
	}
}
      这些媒体宽度决定使用不同的容器(.container),一定要建立在容器之中

    


<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<!---->
		<meta name="viewport" content="width=device-width,initial-scale=1">
		<title>bootstrap</title>
		
		<script type="text/javascript" src="js/jquery.min.js" ></script>
		<!--//Bootstrap需要jquery的支持,所以一定要导入jquery开发包-->
		<script type="text/javascript" src="bootstrap/js/bootstrap.min.js" ></script>

		<link type="text/css" rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
		
	</head>
	<body>
		<div class=".container"> <!--表示定义一个容器-->
			<div class="row">
				<div class="col-md-1">栅格1</div>
				<div class="col-md-1">栅格2</div>
				<div class="col-md-1">栅格3</div>
				<div class="col-md-1">栅格4</div>
				<div class="col-md-1">栅格5</div>
				<div class="col-md-1">栅格6</div>
				<div class="col-md-1">栅格7</div>
				<div class="col-md-1">栅格8</div>
				<div class="col-md-1">栅格9</div>
				<div class="col-md-1">栅格10</div>
				<div class="col-md-1">栅格11</div>
				<div class="col-md-1">栅格12</div>
			</div>
		</div>
	</body>
</html>

        此时可以发现,栅格会根据屏幕宽度的改变,而自动的进行排版.


        

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<!---->
		<meta name="viewport" content="width=device-width,initial-scale=1">
		<title>bootstrap</title>
		
		<script type="text/javascript" src="js/jquery.min.js" ></script>
		<!--//Bootstrap需要jquery的支持,所以一定要导入jquery开发包-->
		<script type="text/javascript" src="bootstrap/js/bootstrap.min.js" ></script>

		<link type="text/css" rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
		
	</head>
	<body>
		<div class=".container"> <!--表示定义一个容器-->
			<div class="row">
				<div class="col-md-1">栅格1</div>
				<div class="col-md-1">栅格2</div>
				<div class="col-md-1">栅格3</div>
				<div class="col-md-1">栅格4</div>
				<div class="col-md-1">栅格5</div>
				<div class="col-md-1">栅格6</div>
				<div class="col-md-1">栅格7</div>
				<div class="col-md-1">栅格8</div>
				<div class="col-md-1">栅格9</div>
				<div class="col-md-1">栅格10</div>
				<div class="col-md-1">栅格11</div>
				<div class="col-md-1">栅格12</div>
			</div>
			<div class="row">
				<div class="col-md-6">
					栅格1
				</div>			
				<div class="col-md-6">
					栅格2
				</div>		
				<div class="col-md-3">
					栅格1
				</div>			
				<div class="col-md-9">
					栅格2
				</div>		
			</div>
		</div>
	</body>
</html>

        如果需要跨列就写多少个列.


范例:实现列偏移

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<!---->
		<meta name="viewport" content="width=device-width,initial-scale=1">
		<title>bootstrap</title>
		
		<script type="text/javascript" src="js/jquery.min.js" ></script>
		<!--//Bootstrap需要jquery的支持,所以一定要导入jquery开发包-->
		<script type="text/javascript" src="bootstrap/js/bootstrap.min.js" ></script>

		<link type="text/css" rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
		
	</head>
	<body>
		<div class=".container"> <!--表示定义一个容器-->
			<div class="row">
				<div class="col-md-1">栅格1</div>
				<div class="col-md-1">栅格2</div>
				<div class="col-md-1">栅格3</div>
				<div class="col-md-1">栅格4</div>
				<div class="col-md-1">栅格5</div>
				<div class="col-md-1">栅格6</div>
				<div class="col-md-1">栅格7</div>
				<div class="col-md-1">栅格8</div>
				<div class="col-md-1">栅格9</div>
				<div class="col-md-1">栅格10</div>
				<div class="col-md-1">栅格11</div>
				<div class="col-md-1">栅格12</div>
			</div>
			<div class="row">
				<!--向左偏移3格-->
				<div class="col-md-3 col-md-offset-3">
					栅格1
				</div>			
				<div class="col-md-6">
					栅格2
				</div>		
			</div>
			<div class="row">
				<!--向左偏移3格-->
				<div class="col-md-3">栅格1</div>			
				<div class="col-md-3 col-md-offset-3">栅格2</div>		
			</div>
		</div>
	</body>
</html>

        除了可以进行整体栅格操作(代码之中需要清楚的是栅格就相当于是一个表格),所以栅格依然是可以进行嵌套的

范例:栅格嵌套


				<div class="col-md-9" style="background-color: #398439;">
					<span style="background-color: red;">
						使用9个栅格
					</span>
					<div class="row">
						<div class="col-md-6">
							内嵌栅格1
						</div>
						<div class="col-md-6">
							内嵌栅格2
						</div>
					</div>
					
				</div>

        col-md-push-*  推   col=md-pull=*拉

    在实际的工作环境之中,经常会使用到这样的推拉效果进行布局

响应式栅格        

    栅格的最大特征是可以根据不同的设备进行显示.

        可以定义多种样式

范例:实现响应式布局

<div class="row">
				<div class="col-md-6 col-xs-3" style="background-color: red;">栅格1</div>
				<div class="col-md-6 col-xs-3" style="background-color: gray;">栅格2</div>
			</div>
			<div class="row">
				<div class="col-md-3 col-xs-2" style="background-color: red;">栅格1</div>
				<div class="col-md-6 col-xs-2" style="background-color: gray;">栅格2</div>
			</div>

        在栅格样式定义之中定义了多种栅格显示方式..


<div class=".container"> <!--表示定义一个容器-->
			<div class="row">
				<div class="col-md-3 col-xs-3" style="background-color: gray;">
					<span class="hidden-xs">特别小的设备隐藏</span>
					<span class="visible-xs">特别小的设备上可见</span>
					
				</div>
			</div>
			<div class="row">
				<div class="col-md-3 col-xs-3" style="background-color: red;">
					<span class="hidden-md">中型设备上隐藏</span>
					<span class="visible-md">中型设备上可见</span>
				</div>
			</div>
		</div>

        针对于现实操作方式在Bootstrap3.2开始出现了一些变化

.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block
        针对于整个bootstrop而言,自动的设备相应是整个布局的关键,



猜你喜欢

转载自blog.csdn.net/qq1019648709/article/details/81045276
今日推荐