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 相关文章推荐
js实现获取焦点后光标在字符串后
Sep 17 Javascript
JS根据生日算年龄的方法
May 05 Javascript
自己动手制作基于jQuery的Web页面加载进度条插件
Jun 03 Javascript
jquery pagination分页插件使用详解(后台struts2)
Jan 22 Javascript
Javascript面试经典套路reduce函数查重
Mar 23 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
Aug 01 Javascript
Node.js 路由的实现方法
Jun 05 Javascript
微信小程序class封装http代码实例
Aug 24 Javascript
Layui数据表格跳转到指定页的实现方法
Sep 05 Javascript
基于js实现判断浏览器类型代码实例
Jul 17 Javascript
js实现tab栏切换效果
Aug 02 Javascript
vue生命周期钩子函数以及触发时机
Apr 26 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
PHP网页游戏学习之Xnova(ogame)源码解读(二)
2014/06/23 PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
2017/04/05 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
2019/06/14 PHP
Javascript简单实现可拖动的div
2013/10/22 Javascript
JavaScript中调用函数的4种方式代码实例
2015/07/08 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
最全的Javascript编码规范(推荐)
2016/06/22 Javascript
详解vue事件对象、冒泡、阻止默认行为
2017/03/20 Javascript
jquery实现一个全局计时器(商城可用)
2017/06/30 jQuery
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
js中getter和setter用法实例分析
2018/08/14 Javascript
bootstrap-table formatter 使用vue组件的方法
2019/05/09 Javascript
express如何解决ajax跨域访问session失效问题详解
2019/06/20 Javascript
微信小程序仿今日头条导航栏滚动解析
2019/08/20 Javascript
jQuery实现轮播图效果
2019/11/26 jQuery
Vue前端项目部署IIS的实现
2020/01/06 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
2021/01/29 Javascript
[47:20]DAC2018 4.4 淘汰赛 Optic vs Mineski 第一场
2018/04/05 DOTA
MySQL最常见的操作语句小结
2015/05/07 Python
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
请不要重复犯我在学习Python和Linux系统上的错误
2016/12/12 Python
python安装教程 Pycharm安装详细教程
2017/05/02 Python
利用pandas进行大文件计数处理的方法
2018/07/25 Python
python实现求特征选择的信息增益
2018/12/18 Python
Python基于pyecharts实现关联图绘制
2020/03/27 Python
HTML5 video 事件应用示例
2014/09/11 HTML / CSS
俄罗斯马克西多姆家居用品网上商店:Максидом
2020/02/06 全球购物
同步和异步有何异同,在什么情况下分别使用他们
2013/04/09 面试题
药物学专业学生的自我评价
2013/10/27 职场文书
家庭教育先进个人事迹材料
2014/01/24 职场文书
复试通知单模板
2015/04/24 职场文书
Python 如何安装Selenium
2021/05/06 Python
Vue实现下拉加载更多
2021/05/09 Vue.js
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers