使用Bootstrap 3开发响应式网站实践01,前期准备、导航区域等

news/2024/5/20 10:48:27/文章来源:https://blog.csdn.net/weixin_30517001/article/details/99484048

“使用Bootstrap 3开发响应式网站实践”系列,将使用Bootstrap 3.2制作一个自适应网站,无论是在电脑、平板,还是手机上,都呈现比较好的效果。在电脑浏览器上的最终效果如下:

30

 

在手机上的呈现效果如下:

29

 

本篇主要包括:

□ 前期准备
□ 引入Bootstrap,jQuey文件等
□ 搭建页面主体结构
□ 导航区域

 

□ 前期准备

→使用Visual Studio 2012创建一个空的ASP.NET网站
→把下载下来的Bootstrap 3中的css,fonts,js文件夹拷贝到网站根目录下
→在网站根目录下创建images文件夹,用来存放所有的图片
→使用NuGet安装最新版的jQuery
→在网站根目录下创建index.html文件
1

 

□ 引入Bootstrap,jQuey文件等

→在css文件夹下创建site.css
→在js文件夹下创建site.js
→把Bootstrap、jQuery等引入index.html文件中

<!DOCTYPE html>
<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, maximum-scale=1,user-scalable=no">
    <link href="css/bootstrap.min.css" rel="stylesheet" />
    <link href="css/site.css" rel="stylesheet" />
</head>
<body>
    
    <script src="Scripts/jquery-2.1.1.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/site.js"></script>
</body>
</html>

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1,user-scalable=no">
这时响应式布局的一个标签,以上表示浏览器的宽度和屏幕宽度保持一致。比如,屏幕宽度为320px,那么浏览器的宽度自适应为320px。如果网站不是针对响应式开发的,就没有必要使用这个标签。其它属性包括:

○ width: 视觉宽度
○ device-width: 屏幕宽度
○ heigh: 视觉高度
○ device-height: 屏幕高度
○ initial-scale: 初始放大比例,设置为1.0时不放大
○ minimum-scale: 最小的放大比例,设置为1.0时不放大
○ maximum-scale: 最大的放大比例,设置为1.0时不放大
○ user-scalable: 是否允许放大,设置为no时不允许放大


 
另外,需要在site.css设置如下:

 @-ms-viewport{
    width: device-width;
}

 

□ 搭建页面主体结构

<!DOCTYPE html>
<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, maximum-scale=1,user-scalable=no">
    <link href="css/bootstrap.min.css" rel="stylesheet" />
    <link href="css/site.css" rel="stylesheet" />
</head>
<body>
    <div class="container" id="main">
        <div class="navbar navbar-fixed-top">
            
        </div><!--导航区域结束-->
        
        <div class="carousel" id="myCarousel">
            
        </div><!--图片展示区域结束-->
        
        <div class="row" id="bigCallout">
            
        </div><!--标注区域结束-->
        
        <div class="row" id="featureHeading">
            
        </div><!--主要功能标题区域结束-->
        
        <div class="row" id="features">
            
        </div><!--主要功能区域结束-->
        
        <div class="row" id="moreInfo">
            
        </div><!--更多信息区域结束-->
        
        <div class="row" id="moreProducts">
            
        </div><!--更多产品区域结束-->
    </div><!--container结束-->
    
    <footer>
        
    </footer><!--页脚结束-->
    <script src="Scripts/jquery-2.1.1.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/site.js"></script>
</body>
</html>
 

○ row属性值:代表单独一行,是Grid的父级元素。


□ 导航区域

→到http://bootswatch.com/下载Theme,并保存到网站根目录下的css文件夹
→下载某个主题,命名为simplex.bootstrap.min.css,并放到如下位置:

    <link href="css/bootstrap.min.css" rel="stylesheet" />
    <link href="css/simplex.bootstrap.min.css" rel="stylesheet" />
    <link href="css/site.css" rel="stylesheet" />

→导航区域html如下: 
        <div class="navbar navbar-fixed-top">
            <div class="container">
                <a class="navbar-brand" href="/"><img src="images/logo.gif" alt="logo"/></a>
                
                <div class="navbar-collapse collapse">
                    <ul class="nav navbar-nav">
                        <li class="active"><a href="#">主页</a></li>
                        <li><a href="#">服务</a></li>
                    </ul>
                    
                    <form class="navbar-form pull-left">
                        <input type="text" id="searchInput" class="form-control" placeholder="搜索"/>
                        <button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-search"></span></button>
                    </form>
                    
                    <ul class="nav navbar-nav pull-right">
                        <li><a href="#"><span class="glyphicon glyphicon-user"></span>设置</a></li>
                    </ul>
                </div><!--nav-collapse结束-->
            </div><!--container结束-->
        </div><!--导航区域结束-->

○ navbar属性值:导航区域、导航条
○ navbar-fixed-top属性值:把导航区域固定在页面顶部
○ 把导航区域的所有元素放在一个<div class="container">中
○ navbar-brand属性值:一般应用在网站logo上
○ navbar-collapse和collapse属性值:是为响应式设计的,当希望一块区域在页面宽度缩小到一定程度时自己适应,就把该块区域包裹在<div class="navbar-collapse collapse">中
○ nav和navbar-nav属性值:用在ul上,可以把a标签加入到导航区域
○ navbar-form属性值:用在form上,可以把form标签加入到导航区域
○ pull-left属性值:漂浮到左边
○ form-control属性值:用在表单元素上
○ glyphicon和glyphicon-search属性值:用在span上,显示Icon

 

当页面足够宽的时候,显示<div class="navbar-collapse collapse">包裹区域。

2

 

当页面宽度缩小到一定程度,<div class="navbar-collapse collapse">包裹区域被隐藏。

3

 

把以上ul中<li><a href="#">服务</a></li>改成下拉菜单。

                    <ul class="nav navbar-nav">
                        <li class="active"><a href="#">主页</a></li>
                        <li class="dropdown">
                            <a href="#" class="dropdown-toggle" data-toggle="dropdown">服务<strong class="caret"></strong></a>
                            <ul class="dropdown-menu">
                                <li><a href="#">足球</a></li>
                                <li><a href="#">篮球</a></li>
                                <li><a href="#">乒乓球</a></li>
                                <li class="divider"></li>
                                <li class="dropdown-header">更多服务...</li>
                                <li><a href="#">创建水球</a></li>
                                <li><a href="#">创建冰球</a></li>
                            </ul>
                        </li>
                    </ul>

4

○ dropdown属性值:这里被应用到li上,这样li变成下拉菜单
○ data-toggle属性:这里属性值为dropdown,表示使用dropdown插件
○ dropdown-toggle属性值:这里了被应用到a上,点击a显示,再点击消失
○ caret属性值:这里被应用到strong,表示向下箭头
○ dropdown的选项是一个ul
○ dropdown-menu属性值:这里被应用到ul上,表示dropdown的选项
○ divider属性值:这里被应用到li上,表示分隔线
○ dropdown-header属性值:这里被应用到li上,该项无法被选中

 

再把以上"我的账户"有关ul中的li改成下拉菜单。

                    <ul class="nav navbar-nav pull-right">
                        <li class="dropdown">
                            <a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="glyphicon glyphicon-user"></span>我的账户<strong class="caret"></strong></a>
                            <ul class="dropdown-menu">
                                <li><a href="#"><span class="glyphicon glyphicon-wrench"></span>设置</a></li>
                                <li><a href="#"><span class="glyphicon glyphicon-refresh"></span>个人信息</a></li>
                                <li><a href="#"><span class="glyphicon glyphicon-briefcase"></span>账单</a></li>
                                <li class="divider"></li>
                                <li><a href="#"><span class="glyphicon glyphicon-off"></span>退出</a></li>
                            </ul>
                        </li>
                    </ul>

5

 

但,现在还有一个问题:当页面宽度缩小到一定程度,<div class="navbar-collapse collapse">包裹区域被隐藏。我们希望在隐藏的时候,出现一个图片,点击它再次出现被隐藏部分。

在导航部分添加一个按钮:

                <button type="button" class="navbar-toggle" data-target="#c" data-toggle="collapse" style="background-color: #e3e3e3;color: black">
                    显示/隐藏
                </button>

6

○ navbar-toggle属性值:这里被应用到button,当点击button出现隐藏部分   
○ data-target属性:这里指向隐藏/显示的div
○ data-toggle属性:引用collapse插件

 

最后,导航部分的完整代码为:

        <div class="navbar navbar-fixed-top">
            <div class="container">
                
                <button type="button" class="navbar-toggle" data-target="#c" data-toggle="collapse" style="background-color: #e3e3e3;color: black">
                    显示/隐藏
                </button>
                <a class="navbar-brand" href="/"><img src="images/logo.gif" alt="logo"/></a>
                
                <div class="navbar-collapse collapse" id="c">
                    <ul class="nav navbar-nav">
                        <li class="active"><a href="#">主页</a></li>
                        <li class="dropdown">
                            <a href="#" class="dropdown-toggle" data-toggle="dropdown">服务<strong class="caret"></strong></a>
                            <ul class="dropdown-menu">
                                <li><a href="#">足球</a></li>
                                <li><a href="#">篮球</a></li>
                                <li><a href="#">乒乓球</a></li>
                                <li class="divider"></li>
                                <li class="dropdown-header">更多服务...</li>
                                <li><a href="#">创建水球</a></li>
                                <li><a href="#">创建冰球</a></li>
                            </ul>
                        </li>
                    </ul>
                    
                    <form class="navbar-form pull-left">
                        <input type="text" id="searchInput" class="form-control" placeholder="搜索"/>
                        <button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-search"></span></button>
                    </form>
                    <ul class="nav navbar-nav pull-right">
                        <li class="dropdown">
                            <a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="glyphicon glyphicon-user"></span>我的账户<strong class="caret"></strong></a>
                            <ul class="dropdown-menu">
                                <li><a href="#"><span class="glyphicon glyphicon-wrench"></span>设置</a></li>
                                <li><a href="#"><span class="glyphicon glyphicon-refresh"></span>个人信息</a></li>
                                <li><a href="#"><span class="glyphicon glyphicon-briefcase"></span>账单</a></li>
                                <li class="divider"></li>
                                <li><a href="#"><span class="glyphicon glyphicon-off"></span>退出</a></li>
                            </ul>
                        </li>
                    </ul>
                </div><!--nav-collapse结束-->
            </div><!--container结束-->
        </div><!--导航区域结束-->    
 


参考资料:
Code a Responsive Website with Bootstrap 3 --by Brad Hussey
http://getbootstrap.com/
http://bootswatch.com/
http://www.tutorialspoint.com/

 

“使用Bootstrap 3开发响应式网站实践”系列包括:

使用Bootstrap 3开发响应式网站实践01,前期准备、导航区域等

使用Bootstrap 3开发响应式网站实践02,轮播

使用Bootstrap 3开发响应式网站实践03,轮播下方的内容排版

使用Bootstrap 3开发响应式网站实践04,使用Panels展示内容

使用Bootstrap 3开发响应式网站实践05,使用Tab、Modal、Form展示内容,使用Popover、Tooltip展示提示信息

使用Bootstrap 3开发响应式网站实践06,使用ListGroup、Thumbnails展示内容

使用Bootstrap 3开发响应式网站实践07,页脚

转载于:https://www.cnblogs.com/darrenji/p/3934843.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_746506.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一些网站 http://ychun.w.googlepages.com/pages

大家都可以说话的地方&#xff1a; 电子产品世界&#xff1a;http://bbs.edw.com.cn nios论坛&#xff1a;http://www.niosforum.com 嵌入式论坛&#xff1a;http://www.anywlan.com/tony/bbs PLD论坛&#xff1a;http://www.pld.com.cn/bbs/index.asp EDAboard&#xff1a;htt…

国外网站设计:25个小众的电子商务网站案例

对于电子商务网站来说&#xff0c;网站的设计和布局的可用性对于产品的销售会产生巨大的影响&#xff0c;另外就是产品带给访客的第一印象也很重要。一个设计良好的电子商务网站会为用户提供一个更愉快的体验&#xff0c;并让他们更容易浏览&#xff0c;搜索&#xff0c;并完成…

微软特邀讲师 徐雷 为受邀为世界500强达丰集团讲授《微软ASP.NET MVC5企业网站开发课程》...

老徐FrankXuLei 非常荣幸受邀为微软大企业客户世界500强达丰集团&#xff08;广达电脑&#xff09;信息化部讲授《微软ASP.NET MVC5企业网站开发课程》缘分2005年在公司篮球队和达丰集团打过友谊赛达丰集团全球第一大笔记本电脑制造商。上海60000多人.技术人员非常客气.企业非常…

Azure公开发布: 基本网站等级, 虚拟网络动态路由网关与点对站, 虚拟网络增强功能...

收到来自Azure的邮件&#xff0c;中国地区的3个功能公开发布&#xff0c;其实在这之前我已经测试了相关功能&#xff0c;并且已经将v-net to v-net ***发布为博文。 以下为邮件内容&#xff1a; 1. Azure基本网站等级 标准网站等级的客户将可以获得更多增值服务。 基本网站等级…

细数国内13家热门在线教育网站平台

2019独角兽企业重金招聘Python工程师标准>>> 在打车软件大战硝烟渐散时&#xff0c;在线教育却现升温之势。2013年至今&#xff0c;不断有人扎身在线教育之中创业&#xff0c;也有不少互联网企业在这个领域投资布局&#xff0c;其中包括BAT这三大巨头&#xff0c;在…

wordpress地址(URL)设置的网站是网站后台的地址,站点地址(URL)设置的是网站前台的地址...

2019独角兽企业重金招聘Python工程师标准>>> wordpress地址&#xff08;URL&#xff09;设置的网站是网站后台的地址&#xff0c;站点地址&#xff08;URL&#xff09;设置的是网站前台的地址。 如果希望前后台域名都是顶级域名的地址&#xff0c;那么可以把上下两个…

linux网站dos攻击自动封15分钟,宝塔面板Nginx配合shell脚本实现自动封禁IP 防御CC DDOS攻击方法...

宝塔面板现在很多小白用户使用的非常多&#xff0c;功能比较简单易用&#xff0c;但是其中防御功能较弱&#xff0c;内置的WAF并不能实现服务器级别的防火墙封IP&#xff0c;所以我们只能借用一下其中的功能&#xff0c;加上LINUX系统天然自带的SHELLIPTABLES防火墙来封禁IP宝塔…

【转】3.15网站维权:如何防止网站内容被剽窃

写在开头&#xff1a;网站内容被其它站点剽窃是建站过程中经常会遇到的问题&#xff0c;严重的侵权现象可以通过法律途径来解决&#xff0c;可一般的复制转载却无法禁止。网络虽然是开放的世界&#xff0c;但一些恶意转载的现象却令众多站长深恶痛绝却又束手无策&#xff0c;比…

html网页超链接百度等网站,零基础学HTML(超链接)

都知道超链接是什么吧&#xff1f;超链接就是从一个网页跳转到另一个网页&#xff0c;还可以从底部跳转到顶部&#xff0c;从而实现网页间的联系&#xff0c;把多个网页联系起来&#xff0c;构成网络。没有添加任何网页的超链接这是一个超链接这是超链接&#xff0c;里面的中文…

[转]Stimator:评估您的网站/博客的价值

转自&#xff1a;http://blog.bingo929.com/index.php 今天发现一个好看的网站&#xff0c;发现一篇有意思的文章“Stimator:评估您的网站/博客的价值”。试着测了一下自己的博克&#xff0c;居然值这么多美元&#xff0c;没想到。 试一试您的地址&#xff1a;Stimator转载于:h…

基于jquery网站左侧下拉菜单

网站左侧下拉菜单jQuery代码。这是一款蓝色风格的适合做后台下拉菜单代码。效果图如下&#xff1a; 在线预览 源码下载 实现的代码&#xff1a; <div class"container"><div class"leftsidebar_box"><div class"line"></…

网站服务架构

服务器划分 对于访问量大的网站而言&#xff0c;将网站的各个部分拆分分别部署到不同服务器上是很有必要的。例如将图片和web站点分开。一般而言&#xff0c;在网站的整个服务器部署上分为如下几种类型&#xff1a; 文件服务器&#xff1a;一般存储系统的相关图片和文件&#x…

我记录网站综合系统 -- 技术原理解析[1:我记录的整体框架的简介]

本文章的代码位置&#xff1a;整个wojilu源代码 我记录作为一个优秀的成熟的框架&#xff0c;包含了你所需要的很多很多功能&#xff0c;下面这个列表就是1.6版为止的大体功能。 [框架包括] 1、一个持久层框架 wojilu ORM2、一个依赖注入框架 wojilu IOC3、一个Web开发框架 wo…

10个很棒的学习Android 开发的网站(转)

看到江湖旅人 写的《10个很棒的学习iOS开发的网站 - 简书》&#xff0c;所以就忍不住写Android 啦&#xff0c;也希望对大家有帮助。我推荐的网站&#xff0c;都是我在学习Android 开发过程中发现的好网站&#xff0c;给初学者一些建议&#xff0c;少走一些弯路。 Android Deve…

转:ASP.NET 2.0:使用用户控件和定制的Web部件个人化你的门户网站

ASP.NET 2.0&#xff1a;使用用户控件和定制的Web部件个人化你的门户网站原著&#xff1a;Ted Pattison&#xff0c;Fritz Onion 翻译&#xff1a;汪泳 原代码下载&#xff1a;WebParts.exe (619KB)原文出处&#xff1a;ASP.NET 2.0 Personalize Your Portal with User Control…

ASP.NET 2.0中轻松实现网站换肤

一、简介&#xff1a;  利用Themes我们可以很容易的更改控件、页面的风格&#xff0c;而不需要修改我们的代码和页面文件。Themes文件被单独的放在1个App_Themes文件夹下面&#xff0c;与你的程序是完全分开的。二、怎么使用Themes和Skins&#xff1a;  先看个非常简单的实…

11个最值得Java开发者收藏的网站

2019独角兽企业重金招聘Python工程师标准>>> Java是一种面向对象的编程语言&#xff0c;由Sun Microsystems公司在1995年的时候正式发布。直到今天&#xff0c;Java都一直是最受欢迎的编程语言之一。如今&#xff0c;Java应用于各种各样的技术领域&#xff0c;例如网…

ASP.NET MVC 网站开发总结(七)——C#操作图片:多张图的拼接(旋转)

其实用C#来操作图片的拼接就是在用Graphic画图。个人感觉还是挺有趣的&#xff0c;各种类库提供了丰富多彩的功能。 源代码&#xff08;移植到一个简单的C#程序中&#xff0c;并没有放在ASP.NET项目中&#xff09;&#xff1a; using System.Drawing; using System.Drawing.Dra…

Sassaparilla – 简单、快速的创建响应式网站

Sassaparilla 是一组创建响应式网站的规则和风格&#xff0c;Sassaparilla 使用 Sass 和 Compass 建立灵活的可重用的样式表&#xff0c;帮助你简单、快速的创建出响应式网站。 您可能感兴趣的相关文章基于拖放布局的 Twitter Bootstrap 网站生成器Superhero&#xff1a;构建大…

20个专业在线配色网站分享

摘自http://www.websbook.com/yuanli/20gzyzxpswzfx_17814.html 现在专门用于配色的在线网站真不少&#xff0c;之前一片文章已经总结了18个配色网站&#xff0c;这次推荐的这20个配色网站也十分出色&#xff0c;而且网站本身的设计也十分精美&#xff0c;网页设计师可以参考使…