当前位置: 首页 > 编程日记 > 正文

前端开发基础7(Bootstrap框架)

Bootstrap介绍

Bootstrap是Twitter开源的基于HTML、CSS、JavaScript的前端框架。

它是为实现快速开发Web应用程序而设计的一套前端工具包。

它支持响应式布局,并且在V3版本之后坚持移动设备优先。

为什么要使用Bootstrap?

在Bootstrap出现之前:

命名:重复、复杂、无意义(想个名字费劲)

样式:重复、冗余、不规范、不和谐

页面:错乱、不规范、不和谐

在使用Bootstrap之后: 各种命名都统一并且规范化。 页面风格统一,画面和谐。

Bootstrap下载

官方地址:https://getbootstrap.com

中文地址:http://www.bootcss.com/

我们使用V3版本的Bootstrap,我们下载的是用于生产环境的Bootstrap。

Bootstrap环境搭建

目录结构:

复制代码
bootstrap-3.3.7-dist/
├── css  // CSS文件
│   ├── bootstrap-theme.css  // Bootstrap主题样式文件
│   ├── bootstrap-theme.css.map
│   ├── bootstrap-theme.min.css  // 主题相关样式压缩文件
│   ├── bootstrap-theme.min.css.map
│   ├── bootstrap.css
│   ├── bootstrap.css.map
│   ├── bootstrap.min.css  // 核心CSS样式压缩文件
│   └── bootstrap.min.css.map
├── fonts  // 字体文件
│   ├── glyphicons-halflings-regular.eot
│   ├── glyphicons-halflings-regular.svg
│   ├── glyphicons-halflings-regular.ttf
│   ├── glyphicons-halflings-regular.woff
│   └── glyphicons-halflings-regular.woff2
└── js  // JS文件├── bootstrap.js├── bootstrap.min.js  // 核心JS压缩文件└── npm.js
复制代码

处理依赖

由于Bootstrap的某些组件依赖于jQuery,所以请确保下载对应版本的jQuery文件,来保证Bootstrap相关组件运行正常。

Bootstrap全局样式

排版、按钮、表格、表单、图片等我们常用的HTML元素,Bootstrap中都提供了全局样式。

我们只要在基本的HTML元素上通过设置class就能够应用上Bootstrap的样式,从而使我们的页面更美观和谐。

标题相关

标题

复制代码
<h1>一级标题36px</h1>
<h2>二级标题30px</h2>
<h3>三级标题24px</h3>
<h4>四级标题18px</h4>
<h5>五级标题14px</h5>
<h6>六级标题12px</h6>
<!--除了使用h标签,Bootstrap内置了相应的全局样式-->
<!--内联标签应用标题样式-->
<span class="h1">一级标题36px</span>
<span class="h2">二级标题30px</span>
<span class="h3">三级标题24px</span>
<span class="h4">四级标题18px</span>
<span class="h5">五级标题14px</span>
<span class="h6">六级标题12px</span>
复制代码

副标题

<!--一级标题中嵌入小标题-->
<h1>一级标题<small>小标题</small></h1>

文本对齐

<!--文本对齐-->
<p class="text-left">文本左对齐</p>
<p class="text-center">文本居中</p>
<p class="text-right">文本右对齐</p>

文本大小写

<!--大小写-->
<p class="text-lowercase">Lowercased text.</p>
<p class="text-uppercase">Uppercased text.</p>
<p class="text-capitalize">Capitalized text.</p>

表格

Class描述
.table-striped条纹状表格
.table-bordered带边框的表格
.table-hover鼠标悬停变色的表格
.table-condensed紧缩型表格
.table-responsive响应式表格

状态类

Class描述
.active鼠标悬停在行或单元格上时所设置的颜色
.success标识成功或积极的动作
.info标识普通的提示信息或动作
.warning标识警告或需要用户注意
.danger标识危险或潜在的带来负面影响的动作

表单

内联表单

表单状态

带图标的表单

按钮

<a class="btn btn-default" href="#" role="button">Link</a>
<button class="btn btn-default" type="submit">Button</button>
<input class="btn btn-default" type="button" value="Input">
<input class="btn btn-default" type="submit" value="Submit">

按钮样式

复制代码
<!-- Standard button -->
<button type="button" class="btn btn-default">(默认样式)Default</button>
<!-- Provides extra visual weight and identifies the primary action in a set of buttons -->
<button type="button" class="btn btn-primary">(首选项)Primary</button>
<!-- Indicates a successful or positive action -->
<button type="button" class="btn btn-success">(成功)Success</button>
<!-- Contextual button for informational alert messages -->
<button type="button" class="btn btn-info">(一般信息)Info</button>
<!-- Indicates caution should be taken with this action -->
<button type="button" class="btn btn-warning">(警告)Warning</button>
<!-- Indicates a dangerous or potentially negative action -->
<button type="button" class="btn btn-danger">(危险)Danger</button>
<!-- Deemphasize a button by making it look like a link while maintaining button behavior -->
<button type="button" class="btn btn-link">(链接)Link</button>
复制代码

按钮大小

复制代码
<p><button type="button" class="btn btn-primary btn-lg">(大按钮)Large button</button><button type="button" class="btn btn-default btn-lg">(大按钮)Large button</button>
</p>
<p><button type="button" class="btn btn-primary">(默认尺寸)Default button</button><button type="button" class="btn btn-default">(默认尺寸)Default button</button>
</p>
<p><button type="button" class="btn btn-primary btn-sm">(小按钮)Small button</button><button type="button" class="btn btn-default btn-sm">(小按钮)Small button</button>
</p>
<p><button type="button" class="btn btn-primary btn-xs">(超小尺寸)Extra small button</button><button type="button" class="btn btn-default btn-xs">(超小尺寸)Extra small button</button>
</p>
复制代码

图片

<img src="..." class="img-responsive" alt="Responsive image">

图片形状

<img src="..." alt="..." class="img-rounded">
<img src="..." alt="..." class="img-circle">
<img src="..." alt="..." class="img-thumbnail">

辅助类

文本颜色

p class="text-muted">...</p>
<p class="text-primary">...</p>
<p class="text-success">...</p>
<p class="text-info">...</p>
<p class="text-warning">...</p>
<p class="text-danger">...</p>

背景颜色

<p class="bg-primary">...</p>
<p class="bg-success">...</p>
<p class="bg-info">...</p>
<p class="bg-warning">...</p>
<p class="bg-danger">...</p>

关闭按钮

<button type="button" class="close" aria-label="Close"><span aria-hidden="true">&times;</span></button>

下拉三角

<span class="caret"></span>

快速浮动

<div class="pull-left">...</div>
<div class="pull-right">...</div>

内容块居中

<div class="center-block">...</div>

清除浮动

<!-- Usage as a class -->
<div class="clearfix">...</div>

显示与隐藏

<div class="show">...</div>
<div class="hidden">...</div>

常用Bootstrap组件

  1. 字体图标
  2. 下拉菜单
  3. 按钮组
  4. 输入框俎
  5. 导航
  6. 分页
  7. 标签和徽章
  8. 页头
  9. 缩率图
  10. 进度条

模拟滚动的进度条:

var $d1 = $("#d1");
var width = 0;
var theID = setInterval(setValue, 200);function setValue() {if (width === 100) {clearInterval(theID);} else {width++;$d1.css("width", width+"%").text(width+"%");}
}模拟滚动的进度条
模拟进度条

响应式开发

为什么要进行响应式开发?

随着移动设备的流行,网页设计必须要考虑到移动端的设计。同一个网站为了兼容PC端和移动端显示,就需要进行响应式开发。

什么是响应式?

利用媒体查询,让同一个网站兼容不同的终端(PC端、移动端)呈现不同的页面布局。

用到的技术:

CSS3@media查询

用于查询设备是否符合某一特定条件,这些特定条件包括屏幕尺寸、是否可触摸、屏幕精度、横屏竖屏等信息。

常见属性:

  • device-width, device-height 屏幕宽、高
  • width,height 渲染窗口宽、高
  • orientation 设备方向
  • resolution 设备分辨率

语法:

@media mediatype and|not|only (media feature) {CSS-Code;
}

不同的媒体使用不同的stylesheet

<link rel="stylesheet" media="mediatype and|not|only (media feature)" href="mystylesheet.css">

viewport

手机浏览器是把页面放在一个虚拟的"窗口"(viewport)中,通常这个虚拟的"窗口"(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户可以通过平移和缩放来看网页的不同部分。

设置viewport

一个常用的针对移动网页优化过的页面的 viewport meta 标签大致如下:

<meta name=”viewport” content=”width=device-width, initial-scale=1, maximum-scale=1″>
  • width:控制 viewport 的大小,可以指定的一个值,如果 600,或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。
  • height:和 width 相对应,指定高度。
  • initial-scale:初始缩放比例,也即是当页面第一次 load 的时候缩放比例。
  • maximum-scale:允许用户缩放到的最大比例。
  • minimum-scale:允许用户缩放到的最小比例。
  • user-scalable:用户是否可以手动缩放。

Bootstrap的栅格系统

  • container
  • row
  • column

注意事项: 使用Bootstrap的时候不要让自己的名字与Bootstrap的类名冲突。

JavaScript插件

常用的Bootstrap自带插件

其他常用插件

转载于:https://www.cnblogs.com/L5251/articles/8604154.html

相关文章:

python自动化测试难不难_Python测试自动化好学还是Pythonweb开发好学?

还是测试吧。。。 用动态语言搞开发&#xff0c;项目大了根本没法维护&#xff0c;而且还会bug层出不穷&#xff0c;任谁也Hold不住。真想搞开发&#xff0c;要么玩Java&#xff0c;要么玩C#。 下面举个例子。 比如一个游戏项目&#xff0c;是这样的(伪代码)&#xff1a;角色 l…

以太坊智能合约开发第二篇:理解以太坊相关概念

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 很多人都说比特币是区块链1.0&#xff0c;以太坊是区块链2.0。在以太坊平台上&#xff0c;可以开发各种各样的去中心化应用&#xff0c;这些应用构成…

【python之旅】python的基础二

一、集合的操作 1、什么是集合&#xff1f; 集合是一个无序的&#xff0c;不重复的数据组合&#xff0c;它的主要作用如下&#xff1a; 去重&#xff1a;把一个列表变成集合&#xff0c;就自动去重关系测试&#xff1a;测试两组数据之前的交集&#xff0c;差集&#xff0c;并集…

hash 值重复_程序员:判断对象是否重复,不重写equals和hashcode不行吗?

前言大家都知道如果要判断一个对象是否相同&#xff0c;都要在对象实体中重写equals和hashcode方法&#xff0c;那你知道为什么重写这两个方法就能根据自己定义的规则实现相等比较了吗&#xff1f;今天带大家来了解一下equals和hashcode重写的实现。set是如何去重的&#xff1f…

LazyT 延迟加载

namespace ConsoleAppTest {class Program{static void Main(string[] args){Lazy<Student> student new Lazy<Student>();//默认未初始化Console.WriteLine(student);//在第一次使用时才实例化Console.WriteLine(student.Value);Console.ReadLine();}public clas…

如何编写一个可升级的智能合约

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 如何编写一个可升级的智能合约 区块链信任基础的数据不可修改的特性&#xff0c;让它传统应用程序有一个很大的不同的地方是一经发布于区块链上就…

用ILSpy查看Session.SessionID的生成算法

缘由 asp.net Session在InProc模式下&#xff0c;容易丢失&#xff0c;经常需要重新登录&#xff0c;且不支持分布式共享。   所以在研究Redis实现原生的Session,本来想用GUID作为key存入cookie&#xff0c;又在想能不能实现跟Session一样的id 实现 ILSpy 是一个开源的.NET反…

java 中 bean 的生命周期

java 中 bean 的生命周期 本篇中会对涉及到的知识点皆做出描述&#xff1a; 首先&#xff0c;我们先了解先虚拟机的类加载机制&#xff1a; 虚拟机把描述类的数据从Class 文件中加载到内存&#xff0c;并对数据进行校验、转换解析和初始化&#xff0c;最终形成可以被虚拟机直接…

python简易版实例_Python3之简单搭建自带服务器的实例讲解

WEB开发&#xff0c;我们先从搭建一个简单的服务器开始&#xff0c;Python自带服务模块&#xff0c;且python3相比于python2有很大不同&#xff0c; 在Python2.6版本里&#xff0c;/usr/bin/lib/python2.6/ 目录下会有 BaseHTTPServer.py, SimpleHTTPServer.py, CGIHTTPServer.…

如何选择分布式系统(区块链)协议?

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 如何选择分布式系统&#xff08;区块链&#xff09;协议? 在构建包分布式系统功能的应用程序时&#xff0c;《财富》500强企业和创始人经常问我们…

MySQL与IO

数据库作为存储系统&#xff0c;所有业务访问数据的操作都会转化为底层数据库系统的IO行为(缓存系统也可以当做是key-value的数据库),本文主要介绍访问mysql数据库的IO流程以及IO相关的参数。 一 MySQL 的文件 首先简单介绍一下MySQL的数据文件&#xff0c;MySQL 数据库包含如下…

python括号配对问题_使用Python的栈实现括号匹配算法

写一个栈的类&#xff1a;stack.py class Stack: def __init__(self): self.items [] def is_Empty(self): return self.items [] def push(self, item): self.items.append(item) def pop(self): return self.items.pop() def peek(self): return self.items[len(items)-1] …

万航单位换算器 V1.0 绿色版

软件名称&#xff1a; 万航单位换算器软件语言&#xff1a; 简体中文授权方式&#xff1a; 免费软件运行环境&#xff1a; Win 32位/64位软件大小&#xff1a; 347KB图片预览&#xff1a; 软件简介:万航单位换算器是一个可以随意转换单位的绿色软件&#xff0c;这个软件收集了各…

Golang学习-基础命令

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 、 Golang学习-基础命令 一、go run 用于运行命令源码文件&#xff0c;只能接收一个命令源码文件以及若干个库源码文件作为参数。先将源码文件编译…

js MD5加密处理

关于MD5&#xff1a; MD5.js是通过前台js加密的方式对用户信息&#xff0c;密码等私密信息进行加密处理的工具&#xff0c;也可称为插件。 在本案例中 可以看到MD5共有6种加密方法&#xff1a; 1&#xff0c; hex_md5(value) 2&#xff0c; b64_md5(value) 3&#xff0c; st…

手机qq2008触屏版_比微信老却是00后最爱 手机QQ 16年进化史

5月5日&#xff0c;腾讯QQ发布了《00后数据报告》&#xff0c;第一次以长图形式向公众展示了00后对于QQ的喜爱。当然物是人非&#xff0c;当年那个“胖企鹅”已经和现在功能强大、颜值超高的QQ不可同日而语。那些留存在我们记忆中&#xff0c;给我们带来无尽欢乐的聊天工具&…

密码学是如何保护区块链的

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 密码学是如何保护区块链的 摘要&#xff1a;密码学是应用数学函数以保证数据安全性的科学。 许多风靡的影视作品都在向人们暗示&#xff1a;只要有…

洛谷.4234.最小差值生成树(LCT)

题目链接 先将边排序&#xff0c;这样就可以按从小到大的顺序维护生成树&#xff0c;枚举到一条未连通的边就连上&#xff0c;已连通则(用当前更大的)替换掉路径上最小的边&#xff0c;这样一定不会更差。 每次构成树时更新答案。答案就是当前边减去生成树上最小边的权值。 LCT…

python数字计算公式_Python中数字以及算数运算符的相关使用

Python数字 数字数据类型用于存储数值。 他们是不可改变的数据类型&#xff0c;这意味着改变数字数据类型会分配一个新的对象。 当你指定一个值时&#xff0c;Number对象就会被创建&#xff1a; var1 1 var2 10 您也可以使用del语句删除一些对象引用。 del语句的语法是&#…

软件测试安全测试高峰论坛

Nubia测试以及介绍 基于Cucumber的自动化测试平台 常见Web漏洞之XSS,主要HTML与JS基础、XSS的基础知识与挖掘方法、XSS的利用 自动化测试框架以及测试思路 转载于:https://www.cnblogs.com/ITniu/p/5776005.html

以太坊是什么,为什么这么火?

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 以太坊是什么 以太坊&#xff08;Ethereum&#xff09;是一个建立在区块链技术之上&#xff0c; 去中心化应用平台。它允许任何人在平台中建立和使…

Python 把字符串变成浮点数

from functools import reducedi {}di.update(zip(1234567890., [1,2,3,4,5,6,7,8,9,0,.])) def str2float(s): st s.split(.) st1 reduce(lambda x,y: 10*x y, map(lambda x: di[x], st[0])) try: st2 reduce(lambda x,y: (x*0.1 y), map(lambda x:…

msbuild FileSysExcludeFiles

<?xml version"1.0" encoding"utf-8"?> <!-- This file is used by the publish/package process of your Web project. You can customize the behavior of this process by editing this MSBuild file. In order to learn more about this pl…

python二分法求解_Python使用二分法求平方根的简单示例

这篇文章主要为大家详细介绍了Python使用二分法求平方根的简单示例&#xff0c;具有一定的参考价值&#xff0c;可以用来参考一下。 对python这个高级语言感兴趣的小伙伴&#xff0c;下面一起跟随512笔记的小编两巴掌来看看吧&#xff01; 使用二分法&#xff08;Bisection Met…

智能合约语言Solidity Solidity API

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 智能合约语言Solidity Solidity API Solidity 是以太坊智能合约编程语言&#xff0c;阅读本文前&#xff0c;你应该对以太坊、智能合约有所了解&am…

PHP PSR-4 Autoloader 自动加载(中文版)

引用&#xff1a;https://segmentfault.com/a/1190000002521658 Autoloader 关键词 “必须”("MUST")、“一定不可/一定不能”("MUST NOT")、“需要”("REQUIRED")、“将会”("SHALL")、“不会”("SHALL NOT")、“应该”(&q…

236. Lowest Common Ancestor of a Binary Tree

原题链接&#xff1a;https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/description/ 代码实现如下&#xff1a; import java.util.LinkedList; import java.util.Queue; import java.util.Stack;/*** Created by clearbug on 2018/2/26.*/ public clas…

python中append的用法_Python 列表 append() 使用方法及示例

Python 列表 append() 使用方法及示例 append()方法将一个项目添加到列表的末尾。 append()方法将单个项目添加到列表的末尾。 append()方法的语法为&#xff1a;list.append(item) append()参数 该方法有一个参数item -要添加到列表末尾的项目 该项目可以是数字&#xff0c;字…

Web3与智能合约交互实战

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 Web3与智能合约交互实战 以太坊中智能合约和web3交互实战 最近区块链、以太坊十分的火&#xff0c;所有就会有许多人去进入区块链这个工作&#x…

BZOJ 4595 SHOI2015 激光发生器 射线,线段,偏转

题目链接&#xff1a;http://www.lydsy.com/JudgeOnline/problem.php?id4595 题意概述&#xff1a; 给出一条射线和N条线段&#xff0c;射线遇到线段会发生反射&#xff0c;令入射角alpha&#xff0c;出射角beta&#xff0c;则betaalpha*phi_i&#xff08;即对于每条线段phi是…