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 相关文章推荐
取得一定长度的内容,处理中文
Dec 20 Javascript
JavaScript 原型学习总结
Oct 29 Javascript
checkbox全选所涉及到的知识点介绍
Dec 31 Javascript
javascript删除数组元素并且数组长度减小的简单实例
Feb 14 Javascript
DOM节点删除函数removeChild()用法实例
Jan 12 Javascript
第一次接触神奇的Bootstrap导航条
Aug 09 Javascript
快速解决js开发下拉框中blur与click冲突
Oct 10 Javascript
使用JavaScript获取URL中的参数(两种方法)
Nov 16 Javascript
VUE中v-on:click事件中获取当前dom元素的代码
Aug 22 Javascript
解决layui动态添加的元素click等事件触发不了的问题
Sep 20 Javascript
vue开发移动端底部导航条功能
Apr 08 Javascript
封装Vue Element的table表格组件的示例详解
Aug 19 Javascript
解决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
模仿OSO的论坛(五)
2006/10/09 PHP
ThinkPHP开发框架函数详解:C方法
2015/08/14 PHP
PHP读取mssql json数据中文乱码的解决办法
2016/04/11 PHP
php array_merge_recursive 数组合并
2016/10/26 PHP
PHP接口并发测试的方法(推荐)
2016/12/15 PHP
php微信开发之图片回复功能
2018/06/14 PHP
prototype Element学习笔记(Element篇三)
2008/10/26 Javascript
讨论html与javascript在浏览器中的加载顺序问题
2013/11/27 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
2016/02/17 Javascript
批量下载对路网图片并生成html的实现方法
2016/06/07 Javascript
jQuery Easy UI中根据第一个下拉框选中的值设置第二个下拉框是否可以编辑
2016/11/29 Javascript
深入理解javascript函数参数与闭包
2016/12/12 Javascript
jQuery实现两列等高并自适应高度
2016/12/22 Javascript
jQuery如何跳转到另一个网页 就这么简单
2016/12/28 Javascript
easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大的实现代码
2017/01/12 Javascript
Bootstrap table 定制提示语的加载过程
2017/02/20 Javascript
JavaScript+Html5实现按钮复制文字到剪切板功能(手机网页兼容)
2017/03/30 Javascript
原生JS获取元素的位置与尺寸实现方法
2017/10/18 Javascript
在vue项目创建的后初始化首次使用stylus安装方法分享
2018/01/25 Javascript
node.js使用express框架进行文件上传详解
2019/03/03 Javascript
vue+Element-ui前端实现分页效果
2020/11/15 Javascript
[03:49]显微镜下的DOTA2第十五期—VG登基之路完美团
2014/06/24 DOTA
[01:23:45]DOTA2-DPC中国联赛 正赛 CDEC vs Dragon BO3 第一场 1月22日
2021/03/11 DOTA
python解析模块(ConfigParser)使用方法
2013/12/10 Python
linux系统使用python监控apache服务器进程脚本分享
2014/01/15 Python
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
Python抓取电影天堂电影信息的代码
2016/04/07 Python
python的dataframe和matrix的互换方法
2018/04/11 Python
Django框架封装外部函数示例
2019/05/28 Python
keras slice layer 层实现方式
2020/06/11 Python
名词解释WEB SERVICE,SOAP,UDDI,WSDL,JAXP,JAXM;JSWDL开发包的介绍。
2012/10/27 面试题
找工作最新求职信
2013/12/22 职场文书
销售经理工作职责
2014/02/03 职场文书
学校党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
学习商务礼仪心得体会
2016/01/22 职场文书
springboot拦截器无法注入redisTemplate的解决方法
2021/06/27 Java/Android