记一道css面试题 : 三栏布局两边宽度固定,中间宽度自适应,并且布局随屏幕大小改变。

   前几天面试时有道css题没做出来,回来好好学习一番后把其记录下来。

  题目是这样的:左中右三栏布局,左右两栏宽度固定,左右两栏的宽度为200像素,中间栏宽度自适应。当屏幕小于600px时,3栏会分别占用一行。像这样

  当屏幕大于600px时,是这样

  我做出来用了css3的@media,如果不用这个,好吧,水平有限想不出来。。。

下面是代码:

<!DOCTYPE>
<html>
<head>
<style>
body{
	margin: 0 ;
	padding: 0;
}
@media screen and (min-width: 600px){
	.left,.right{
		position: absolute;
		top:0;
		height: 50px;
		width: 200px;
	}
	.left{
		left:0;
		background-color: red;
	}
	.center{
		height: 50px;
		margin: 0 200px;
		background-color: orange;
	}
	.right{
		right:0;
		background-color: blue;
	}
}
@media screen and (max-width: 600px){
	.left,.right{
		height: 50px;
		width: 200px;
		float:left;
	}
	.left{
		background-color: red;
	}
	.center{
		width: 100%;
		height: 50px;
		float: left;
		background-color: orange;
			}
	.right{
		background-color: blue;
		}
}

</style>
<head>
<body>
	<div class="left">left</div>
	<div class="center">center</div>
	<div class="right">right</div>
</body>
</html>
时间: 2024-10-11 00:57:46

记一道css面试题 : 三栏布局两边宽度固定,中间宽度自适应,并且布局随屏幕大小改变。的相关文章

CSS 布局实例系列(三)如何实现一个左右宽度固定,中间自适应的三列布局——也聊聊双飞翼

今天聊聊一个经典的布局实例: 实现一个三列布局,其中左侧和右侧的部分宽度固定,中间部分宽度随浏览器宽度的变化而自适应变化 可能很多朋友已经笑了,这玩意儿通过双飞翼布局就能轻松实现.不过,还请容我在双飞翼之外,循序渐进地介绍一下我们可以如何实现一个三列布局. 1. 首先,使用浮动布局来实现一下 See the Pen float-three-columns by xal821792703 (@honoka) on CodePen. 左侧元素与右侧元素优先渲染,分别向左和向右浮动 中间元素在文档流的

布局:左宽度固定,右边自适应

需求: 左侧固定宽,右侧自适应屏幕宽: 左右两列,等高布局: 左右两列要求有最小高度,例如:200px;(当内容超出200时,会自动以等高的方式增高) 方法1:浮动布局 这种方法我采用的是左边浮动,右边加上一个margin-left值,让他实现左边固定,右边自适应的布局效果 这种实现方法最关键之处就是自适应宽度一栏"div#content"的"margin-left"值要等于固定宽度一栏的宽度值 <!DOCTYPE html> <html lang

网页上中下三分布局,上下固定,中间自适应

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <!-- 禁止浏览器从本地缓存中调阅页面.--> <

页面布局方案-上固定,下自适应

上固定,下自适应 两行布局,上固定,下自适应 效果: 代码: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>上边固定,下面自适应</title> 5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 6 <style type="text/css&

使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)

来源:http://blog.csdn.net/cinderella_hou/article/details/52156333 所谓三列自适应布局指的是两边定宽,中间block宽度自适应.这道题在今年网易内推前端工程师面试的时候也被问到. 我这里主要分为两大类,一类是基于position传统的实现,一类是基于css3新特性弹性盒模型布局实现. 1. 基于传统的position和margin等属性进行布局 这里也分为三种方法,分别为绝对定位法,圣杯布局,自身浮动法. 1).绝对定位法 绝对定位法原

(转转转)使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)

所谓三列自适应布局指的是两边定宽,中间block宽度自适应.这道题在今年网易内推前端工程师面试的时候也被问到. 我这里主要分为两大类,一类是基于position传统的实现,一类是基于CSS3新特性弹性盒模型布局实现. 1. 基于传统的position和margin等属性进行布局 这里也分为三种方法,分别为绝对定位法,圣杯布局,自身浮动法. 1).绝对定位法 绝对定位法原理是将左右两边使用absolute定位,因为绝对定位使其脱离文档流,后面的center会自然流动到他们上面,然后使用margin

css的经典三栏式布局

今天上百度前端技术学院的做任务巩固基础,之前做了两个比较复杂的页面,总觉得自己有时好有时差,于是决定从基础任务开始从新做一遍查缺补漏. 第一个任务是实现一个三栏布局,外部的两栏固定宽度,中间自适应,以下是效果图: 我自己采用了两种布局方式: 首先是:浮动float css代码: .team-inf{  //左边栏的宽为固定宽200px float: left; width: 200px; } .logo-group{   //右边栏的宽为固定宽120px float: right; paddin

CSS实现经典三栏布局(两侧定宽,中间自适应)

近期开始独立攻克百度前端技术学院的各项任务,之前做了两个比较复杂的页面,深深感觉基础不好,好多css的语句都是为了实现效果而去写的,出现了好多问题,而自己的解决方案也不够优,于是决定从基础开始学起,循序渐进. 第一个任务是实现一个三栏布局,外部的两栏固定宽度,中间自适应,以下是效果图: 我使用了两种方法实现以上效果:float和position 以下是float方法的CSS代码: 1 .team-inf{ 2 float: left; 3 width: 200px; 4 } 5 .logo-gr

详解 CSS 七种三栏布局技巧

作者:林东洲 链接:https://zhuanlan.zhihu.com/p/25070186 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 三栏布局,顾名思义就是两边固定,中间自适应.三栏布局在开发十分常见,那么什么是三栏布局?比如我打开某东的首页: 映入眼帘的就是一个常见的三栏布局:即左边商品导航和右边导航固定宽度,中间的主要内容随浏览器宽度自适应. 下面围绕的这样的目的,即左右模块固定宽度,中间模块随浏览器变化自适应,想要完成的最终效果如下图所示: 红色