Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面


Posted in Javascript onJuly 01, 2016

虽然说IE6除了部分要求苛刻的需求以外已经被可以不考虑了,但是WIN7自带的浏览器IE8还是需要支持的。
本文这个方法主要的优点,个人觉得就是准备少,不需要上网寻找大量的图片做素材,你只要准备好一个bootstrap、jquery与photoshop就可以了,bootstrap与jquery怎么配置,可以参考《Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗》(点击打开链接)
被要求编写一个网站,常常会被如何布局困扰,其实也不难,如果能够熟练使用Bootstrap,并且有一套特定的方法,那么应对普通的需求还是能够快速轻松地交功课的。 
虽然网上的页面模板一搜一大段,但是能够庖丁解牛地了解这些页面模板的创造过程才是关键。
一旦下载这些模板与浏览器不兼容,又不会修改,那就麻烦大了。 

一、基本目标

使用BootstrapV3来创造如下的页面:

Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面

主页如上所示,首先挂在页头是这个网站的导航,分别为left,middle,right三个按钮与下拉菜单dropdown。这里的实质是一个按钮组,不能使用Bootstrap提供的导航栏组件,因为这个导航栏组件不兼容IE8,具体见:《解决bootstrap导航栏navbar在IE8上存在缺陷的方法》一文(点击打开链接)

之后,在巨幕之下,还有三个专栏,与相应的两个按钮,这里可以放置网站上最重要的几个部分,最后按照惯例是版权信息。

而内页则如下所示:

Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面

同样是置顶的导航条,然后是这个内页的标题与内容。内页的标题实质上还是一个巨幕,只是比主页的尺寸少而已。

接下来是还是版权信息。

二、制作过程
 1.首先打开photoshop,新建一个1024x1的图像,宽度随意,尽量宽就可以了,图像是1就可以了,前景色为深绿色R:0 G:140 B:0,背景色为浅绿色R:100 G:200 B:100,用渐变工具拉出如下的图像,怎么拉都可以向左往右拉可以,向中间往两边也可以,看个人喜好: 

Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面

这是我们需要准备的唯一一个图像,可以把photoshop关闭,抛在一边,把这个图像保存在网站工程文件夹,这个图像才6k左右,根本不影响加载。 

2、主页
具体代码如下,然后一段一段代码说明: 

<!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>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>无标题文档</title>
 <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
 <link href="css/bootstrap.css" rel="stylesheet" media="screen">
 <script type="text/javascript" src="js/jquery-1.11.1.js"></script>
 <script type="text/javascript" src="js/bootstrap.js"></script>
 <style type="text/css">
 h1,h2,h3,h4,h5 {
 font-family: "Microsoft YaHei UI", "Microsoft YaHei", "Helvetica Neue",
 Helvetica, Arial, "Hiragino Sans GB", "Hiragino Sans GB W3",
 "WenQuanYi Micro Hei", sans-serif;
 }
 </style>
 </head>
 <body>
 <div style="position: absoulted; top: 0; left: 0; width: 100%;">
 <div class="btn-group btn-group-justified">
 <div class="btn-group">
 <button type="button" class="btn btn-success">
 Left
 </button>
 </div>
 <div class="btn-group">
 <button type="button" class="btn btn-success">
 Middle
 </button>
 </div>
 <div class="btn-group">
 <button type="button" class="btn btn-success">
 Right
 </button>
 </div>

 <div class="btn-group">
 <button type="button" class="btn btn-success dropdown-toggle"
 data-toggle="dropdown">
 Dropdown
 <span class="caret"></span>
 </button>
 <ul class="dropdown-menu" role="menu">
 <li>
 <a href="#">Dropdown link</a>
 </li>
 <li>
 <a href="#">Dropdown link</a>
 </li>
 </ul>
 </div>

 </div>
 </div>

 <div class="jumbotron masthead"
 style="background-image: url(images/bg.jpg); background-repeat: repeat; text-align: center">
 <br />
 <br />
 <br />
 <br />
 <br />
 <h1>
 <font color="#ffffff">Banner : the Main headline</font>
 </h1>
 <h2>
 <font color="#ffffff">Sub-heading</font>
 </h2>
 <br />
 <br />
 <br />
 <br />
 <br />
 </div>


 <div class="container">
 <div class="row">
 <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4 ">
 <div class="panel panel-default">
 <div class="panel-body">
 <h3>
 Column1
 </h3>
 <p>
 ...
 </p>
 <p>
 <a href="#" class="btn btn-success" role="button">Button</a>
 <a href="#" class="btn btn-default" role="button">Button</a>
 </p>
 </div>
 </div>
 </div>

 <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4">
 <div class="panel panel-default">
 <div class="panel-body">
 <h3>
 Column2
 </h3>
 <p>
 ...
 </p>
 <p>
 <a href="#" class="btn btn-success" role="button">Button</a>
 <a href="#" class="btn btn-default" role="button">Button</a>
 </p>
 </div>
 </div>
 </div>

 <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4">
 <div class="panel panel-default">
 <div class="panel-body">
 <h3>
 Column2
 </h3>
 <p>
 ...
 </p>
 <p>
 <a href="#" class="btn btn-success" role="button">Button</a>
 <a href="#" class="btn btn-default" role="button">Button</a>
 </p>
 </div>

 </div>
 </div>
 </div>


 <div class="panel panel-default">
 <div class="panel-body" style="text-align: center">
 Copyright information
 </div>
 </div>

 </div>
 </body>
</html>

 (1)<head>部分 

<head>
 <!--网站编码,标题,自适应屏幕等-->
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>无标题文档</title>
 <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
 <!--需要使用的js与css样式-->
 <link href="css/bootstrap.css" rel="stylesheet" media="screen">
 <script type="text/javascript" src="js/jquery-1.11.1.js"></script>
 <script type="text/javascript" src="js/bootstrap.js"></script>
 <!--这是唯一需要我们自己定义的css样式,用来解决win7系统下,微软雅黑字体无法正常显示,而显示宋体的bug-->
 <style type="text/css">
 h1,h2,h3,h4,h5 {
 font-family: "Microsoft YaHei UI", "Microsoft YaHei", "Helvetica Neue",
 Helvetica, Arial, "Hiragino Sans GB", "Hiragino Sans GB W3",
 "WenQuanYi Micro Hei", sans-serif;
 }
 </style>
 </head>

(2)导航栏
 由于bootstrap提供的导航栏不适用,我们只好用bootstrap提供的按钮组来自己写导航栏 

<!--首先导航栏必必须挂在网页头-->
 <div style="position: absoulted; top: 0; left: 0; width: 100%;">
 <!--定义一个按钮组-->
 <div class="btn-group btn-group-justified">
 <div class="btn-group">
 <!--导航栏中单个按钮,也就是没有下拉菜单的按钮的超级链接写作方式需要注意,是使用a标签,然后加上class样式的,而不是官网提供的button标签-->
 <a href="#" class="btn btn-success">
  Left
  </a>
 </div>
 <div class="btn-group">
 <a href="#" class="btn btn-success">
 Middle
 </a>
 </div>
 <div class="btn-group">
 <a href="#" class="btn btn-success">
 Right
 </a>
 </div>
 
 <!--下拉菜单的写法如下:-->
 <div class="btn-group">
 <button type="button" class="btn btn-success dropdown-toggle"
 data-toggle="dropdown">
 Dropdown
 <span class="caret"></span>
 </button>
 <ul class="dropdown-menu" role="menu">
 <li>
 <a href="#">Dropdown link</a>
 </li>
 <li>
 <a href="#">Dropdown link</a>
 </li>
 </ul>
 </div>

 </div>
 </div>

改变class属性中btn-success变成btn-primary,btn-danger等能够改变这个按钮的颜色哦!
 (3)巨幕部分 
巨幕的写法如下,关键是引入我们刚才用photoshop画出来的背景 

这里之所以要加这么多<br>回车是因为要拉大这个巨幕的尺寸 

<div class="jumbotron masthead"
 style="background-image: url(images/bg.jpg); background-repeat: repeat; text-align: center">
 <br />
 <br />
 <br />
 <br />
 <br />
 <h1>
 <font color="#ffffff">Banner : the Main headline</font>
 </h1>
 <h2>
 <font color="#ffffff">Sub-heading</font>
 </h2>
 <br />
 <br />
 <br />
 <br />
 <br />
 </div>

(4)专栏部分 
这里运用到bootstrap的栅格组织,进行对三个专栏的排版 
具体可以参考Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统一文,把整个网页的12格分成3份,每份4格就刚刚好了 ,而每个专栏就是一个没有面板头的面板,里面一个h3的大标题,然后p的一个段落文本,再两个按钮。
值得注意的是,这些东西必须放到一个容器以内,不然这三个东西会占满整个页面:

<div class="container">
 <div class="row">
 <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4 ">
 <div class="panel panel-default">
 <div class="panel-body">
 <h3>
 Column1
 </h3>
 <p>
 ...
 </p>
 <p>
 <a href="#" class="btn btn-success" role="button">Button</a>
 <a href="#" class="btn btn-default" role="button">Button</a>
 </p>
 </div>
 </div>
 </div>

 <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4">
 <div class="panel panel-default">
 <div class="panel-body">
 <h3>
 Column2
 </h3>
 <p>
 ...
 </p>
 <p>
 <a href="#" class="btn btn-success" role="button">Button</a>
 <a href="#" class="btn btn-default" role="button">Button</a>
 </p>
 </div>
 </div>
 </div>

 <div class="col-xs-4 col-sm-4 col-md-4 col-lg-4">
 <div class="panel panel-default">
 <div class="panel-body">
 <h3>
 Column2
 </h3>
 <p>
 ...
 </p>
 <p>
 <a href="#" class="btn btn-success" role="button">Button</a>
 <a href="#" class="btn btn-default" role="button">Button</a>
 </p>
 </div>

 </div>
 </div>
 </div>

(5)版权信息部分
 没什么好说的,就是一个面板 

<div class="panel panel-default">
 <div class="panel-body" style="text-align: center">
 Copyright information
 </div>
 </div>

 3、内页
 会做主页,那么内页的思想也就完全相同了,不再赘述,同理,代码如下:

<!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>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>无标题文档</title>
 <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
 <link href="css/bootstrap.css" rel="stylesheet" media="screen">
 <script type="text/javascript" src="js/jquery-1.11.1.js"></script>
 <script type="text/javascript" src="js/bootstrap.js"></script>
 <style type="text/css">
 h1,h2,h3,h4,h5 {
 font-family: "Microsoft YaHei UI", "Microsoft YaHei", "Helvetica Neue",
 Helvetica, Arial, "Hiragino Sans GB", "Hiragino Sans GB W3",
 "WenQuanYi Micro Hei", sans-serif;
 }
 </style>
 </head>

 <body>
 <div style="position: absoulted; top: 0; left: 0; width: 100%;">
 <div class="btn-group btn-group-justified">
 <div class="btn-group">
 <a href="#" class="btn btn-success">
  Left
  </a>
 </div>
 <div class="btn-group">
 <a href="#" class="btn btn-success">
 Middle
 </a>
 </div>
 <div class="btn-group">
 <a href="#" class="btn btn-success">
 Right
 </a>
 </div>

 <div class="btn-group">
 <button type="button" class="btn btn-success dropdown-toggle"
 data-toggle="dropdown">
 Dropdown
 <span class="caret"></span>
 </button>
 <ul class="dropdown-menu" role="menu">
 <li>
 <a href="#">Dropdown link</a>
 </li>
 <li>
 <a href="#">Dropdown link</a>
 </li>
 </ul>
 </div>

 </div>
 </div>
 
 <div class="jumbotron masthead"
 style="background-image: url(images/bg.jpg); background-repeat: repeat;">
 <h1>
 <font color="#ffffff">Title</font>
 </h1>
 </div>
 
 <div class="container-fluid">
 <div class="panel panel-default">
 <div class="panel-body">
 Content
 </div>
 </div>
 <div class="panel panel-default">
 <div class="panel-body" style="text-align: center">
  Copyright information
 </div>
 </div>
 </div>
 

 
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
为Yahoo! UI Extensions Grid增加内置的可编辑器
Mar 10 Javascript
Extjs中ComboBox加载并赋初值的实现方法
Mar 22 Javascript
js循环改变div颜色具体方法
Jun 25 Javascript
javascript禁用Tab键脚本实例
Nov 22 Javascript
如何调试异步加载页面里包含的js文件
Oct 30 Javascript
基于dropdown.js实现的两款美观大气的二级导航菜单
Sep 02 Javascript
理解javascript模块化
Mar 28 Javascript
JS实现表单验证功能(验证手机号是否存在,验证码倒计时)
Oct 11 Javascript
VUE axios上传图片到七牛的实例代码
Jul 28 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
May 27 jQuery
基于JavaScript实现简单抽奖功能代码实例
Oct 20 Javascript
Vue中避免滥用this去读取data中数据
Mar 02 Vue.js
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
Jul 01 #Javascript
jQuery mobile的header和footer在点击屏幕的时候消失的解决办法
Jul 01 #Javascript
全面了解JavaScript的数据类型转换
Jul 01 #Javascript
全面解析JS字符串和正则表达式中的match、replace、exec等函数
Jul 01 #Javascript
浅谈JavaScript中的分支结构
Jul 01 #Javascript
Bootstrap下拉菜单效果实例代码分享
Jun 30 #Javascript
Bootstrap图片轮播组件使用实例解析
Jun 30 #Javascript
You might like
Yii2中DropDownList简单用法示例
2016/07/18 PHP
js保留两位小数使用toFixed实现
2013/07/29 Javascript
JS比较2个日期间隔的示例代码
2014/04/15 Javascript
使用javascript实现监控视频播放并打印日志
2015/01/05 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
JQuery简单实现锚点链接的平滑滚动
2015/05/03 Javascript
js检测iframe是否加载完成的方法
2015/11/26 Javascript
js导出excel文件的简洁方法(推荐)
2016/11/02 Javascript
基于bootstrap按钮式下拉菜单组件的搜索建议插件
2017/03/25 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
2017/05/03 Javascript
详解基于vue的移动web app页面缓存解决方案
2017/08/03 Javascript
基于Two.js实现星球环绕动画效果的示例
2017/11/06 Javascript
JS实现的简单拖拽购物车功能示例【附源码下载】
2018/01/03 Javascript
微信小程序实现YDUI的ScrollNav组件
2018/02/02 Javascript
nodejs取得当前执行路径的方法
2018/05/13 NodeJs
react的滑动图片验证码组件的示例代码
2019/02/27 Javascript
vue实现员工信息录入功能
2020/06/11 Javascript
vue-router懒加载的3种方式汇总
2021/02/28 Vue.js
[03:20]次级联赛厮杀超职业 现超级兵对拆世纪大战
2014/10/30 DOTA
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
2017/06/21 Python
Python 统计字数的思路详解
2018/05/08 Python
python实现比较文件内容异同
2018/06/22 Python
Pytorch中accuracy和loss的计算知识点总结
2019/09/10 Python
Python lambda表达式原理及用法解析
2020/08/18 Python
Django实现随机图形验证码的示例
2020/10/15 Python
如何基于Python爬虫爬取美团酒店信息
2020/11/03 Python
利用Python实现自动扫雷小脚本
2020/12/17 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
澳大利亚婴儿、幼儿和儿童在线设计师商店:Smooch Baby
2019/02/16 全球购物
一道写SQL的面试题和答案
2013/11/19 面试题
迷你西餐厅创业计划书范文
2013/12/31 职场文书
临床专业自荐信
2014/06/22 职场文书
党员教师四风自我剖析材料
2014/09/30 职场文书
院党委组织查摆问题对照检查材料思想汇报2014
2014/10/08 职场文书
Go timer如何调度
2021/06/09 Golang
CSS精灵图的原理与使用方法介绍
2022/03/17 HTML / CSS