阿里的一道笔试题
2015-08-18 15:07
429 查看
题目: 实现如下图布局,核心区域左侧自适应,右侧固度宽度200px。
代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <style> input{ padding: 0; margin:0; text-align: right;} .header{width: 100%; height: 100px; border: 1px solid darkgreen; position: relative;} .logo{ width: 80px; height: 80px; margin: 9px; border: 1px solid red;} .inputTxt{ float: left; position: absolute; bottom: 10px; right: 10px;} .main{ width: 100%; height: 500px; margin: 10px 0; } .content{ height: 498px; margin-right: 210px; border: 1px solid blue;} .aside{ width: 200px; border: 1px solid red; position: absolute; top:120px; right: 10px; } .footer{ width: 100%; border: 1px solid gray; text-align: center;} </style> </head> <body> <div class="header"> <div class="logo">Logo</div> <div class="inputTxt"> <input type="text" value="用户名" > </div> </div> <div class="main"> <div class="content">content-宽度自适应</div> <div class="aside">aside-定宽200px</div> </div> <div class="footer">footer</div> </body> </html>虽然功能实现了,但觉得自己做这个好慢,我是用绝对定位处理那个aside的。都是一点点调出来的,效率不高。
结果如下图:
我觉得实现效果并不理想啊。
用我今天后面学的盒布局实现下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <style> input{ padding: 0; margin:0; text-align: right;} .header{width: 100%; height: 100px; border: 3px solid darkgreen; position: relative;} .logo{ width: 80px; height: 80px; margin: 9px; border: 3px solid red;} .inputTxt{ position: absolute; bottom: 10px; right: 10px;} .main{ width: 100%; height: 500px; margin: 10px 0; display: -webkit-box; } .content{ height: 498px; margin-right: 30px; border: 3px solid blue; -webkit-box-flex: 1;} /*利用弹性盒布局有时候尺寸不是太精确,这里我加了一个margin-right:-5px; 不知道为什么它不跟右端对齐*/ .aside{ width: 200px; border: 3px solid red; height: 20px; -webkit-box-flex: 0; margin-right:-5px;} .footer{ width: 100%; border: 3px solid gray; text-align: center;} </style> </head> <body> <div class="header"> <div class="logo">Logo</div> <div class="inputTxt"> <input type="text" value="用户名" > </div> </div> <div class="main"> <div class="content">content-宽度自适应</div> <div class="aside">aside-定宽200px</div> </div> <div class="footer">footer</div> </body> </html>效果如下图
感觉这个比上一个更好用些,记住这两个属性 display: -webkit-box; -webkit-box-flex: value;
相关文章推荐
- 从网上学习的网页宽度自适应布局方法
- Bootstrap响应式前端框架笔记二——排版标签与类
- 图文并茂!8 张 Gif 图学会 Flexbox
- CSS 布局模块
- 【前端设计】前端设计原则,布局规范
- 前端知识学习-----多列布局(1)
- CSS两栏布局
- JS设置cookie、读取cookie、删除cookie的三个方法
- Volley Gson Json
- #1 add life to static pages && connect to MySQL
- volley JSON请求数据
- 签到日历升级美化版包含css
- JS禁止浏览器后退键
- a中调用js的几种方法
- json_encode处理中文乱码
- Extjs按钮的隐藏、显示、禁用,启用,去除加载朦层
- 浅谈CSS3 Filter的10种特效
- 用.net dynamic实现对JSON文件的读写操作
- bootstrap简单的签收页面
- jquery实现复选框的全选与反选