【Java EE】Day11 BootStrap、响应式布局、栅格系统、CSS样式、案例
一、BootStrap介绍
https://v3.bootcss.com/css/#overview
1、概念
- 基于三剑客开发的前端开发框架
- 定义了许多css样式和js插件,从而得到丰富的页面效果
- 依赖于栅格系统实现响应式布局(设备兼容)
2、快速入门
- 下载并将样式、字体和插件导入项目根目录
- 在html中引入资源文件bootstrap.min.css
二、响应式布局
1、栅格系统
- 一行12个格,可以指定元素占几个格子
- 步骤:
- 定义容器:container(留白)、container-fluid(100%宽度)
- 定义行,使用row
- 定义元素并指定所占格子数目
- CSS的class:col-设备代号-格子数目(1~12)
- 设备代号:xs,sm,md,lg(笑死me了)
<style>
/*<!-- 定义css类选择器 -->*/
.inner{
border:1px solid red;
}
</style>
</head>
<body>
<!--1.定义容器-->
<div class="container-fluid">
<!--2.定义行-->
<div class="row">
<!--3.定义元素,一行有12个格子
目的:在大的显示器一行12个格子
在pad上,一行6个格子,放不下会自动换行-->
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
<div class="col-lg-1 col-sm-2 inner">栅格</div>
</div>
</div>
- 超过12自动换行
3、全局CSS样式
- 按钮:class="btn btn-default"
- 图片:class="img-responsive",响应式图片
- 图片形状:方形img-rounded、圆形img-circle、相框img-thumbnail
- 表格:table-bordered边框,table-hover悬浮
- 表单:class="form-control"控制,所有表单项位于class="form-group"中
- 其他组件:导航栏、分页条、轮播图
三、案例:黑马旅游网
<html lang="zh-CN">
<head>
<!--固定的meta写法,浏览器支持、设备宽度设置-->
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>Bootstrap HelloWorld</title> <!-- Bootstrap -->
<!--验证是否写对,可以按住ctrl,看有没有小手-->
<link href="css/bootstrap.min.css" rel="stylesheet"> <script src="js/jquery-3.2.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<style>
.paddtop{
padding-top: 10px;
}
.search_btn{
float: left;
border:2px solid #ffc900;
width:60px;
height: 35px;
background-color: #ffc900;
text-align: center;
line-height: 35px;
margin-top: 15px;
}
.search_input{
float: left;
border:2px solid #ffc900;
width:400px;
height: 35px;
padding-left:5px;
margin-top: 15px;
}
.jx{
border-bottom: 2px solid #ffc900;
padding: 5px;
}
.company{
height:40px;
background-color: #ffc900;
text-align: center;
line-height: 40px;
/*?????*/
font-size: 8px;
}
</style>
</head>
<body>
<!--页眉100%,内容留白,页脚100%-->
<!--1.页眉部分-->
<!--使用h5的语义化标签-->
<header class="container-fluid">
<!--4行-->
<div class="row">
<img src="img/top_banner.jpg" alt="" class="img-responsive">
</div>
<div class="row paddtop" >
<div class="col-md-3">
<img src="img/logo.jpg" alt="" class="img-responsive">
</div>
<div class="col-md-5">
<input type="text" class="search_input" placeholder="请输入线路名称">
<a href="#" class="search_btn">搜索</a>
</div>
<div class="col-md-4"> <img src="img/hotel_tel.png" alt="" class="img-responsive"></div>
</div>
<!--导航栏-->
<div class="row">
<nav class="navbar navbar-default">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<!-- 定义汉堡按钮 -->
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<!-- 定义线的样式-->
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<!-- 发给logo-->
<a class="navbar-brand" href="#">首页</a>
</div> <!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li> </ul> </div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav> </div>
<div class="row">
<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<ol class="carousel-indicators">
<li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
<li data-target="#carousel-example-generic" data-slide-to="1"></li>
<li data-target="#carousel-example-generic" data-slide-to="2"></li>
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
<div class="item active">
<img src="img/banner_1.jpg" alt="...">
<div class="carousel-caption">
...
</div>
</div>
<div class="item">
<img src="img/banner_2.jpg" alt="...">
<div class="carousel-caption">
兵马俑
</div>
</div> <div class="item">
<img src="img/banner_3.jpg" alt="...">
<div class="carousel-caption">
...
</div>
</div>
...
</div> <!-- Controls -->
<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
</div>
</header>
<!--2.主体部分-->
<div class="container">
<div class="row jx">
<img src="img/icon_5.jpg" alt="">
<span>黑马精选</span>
</div>
<div class="row paddtop">
<div class="col-md-3">
<!--相框-->
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-3">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-3">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-3">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
</div>
<div class="row jx">
<img src="img/icon_6.jpg" alt="">
<span>国内游</span>
</div>
<!--一行分两个格子-->
<div class="row paddtop">
<div class="col-md-4">
<img src="img/guonei_1.jpg" alt="">
</div>
<div class="col-md-8">
<div class="row">
<div class="col-md-4">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<img src="img/jiangxuan_1.jpg" alt="">
<p>
上海直飞三亚五天四晚自由行(春节销售+亲子/蜜月/休闲游首选+豪华酒店任选+接送机)
</p>
<font color="red">¥ 899</font>
</div>
</div>
</div>
</div>
</div>
</div>
<!--3.页脚部分-->
<footer class="container-fluid">
<div class="row">
<img src="img/footer_service.png" alt="" class="img-responsive">
</div>
<div class="row company">
江苏传智播客教育科技股份有限公司 版权所有Copyright 2006-2018, All Rights Reserved 苏ICP备16007882
</div>
</footer>
</body>
</html>
【Java EE】Day11 BootStrap、响应式布局、栅格系统、CSS样式、案例的更多相关文章
- css模拟Bootstrap响应式布局——栅格
做作业的时候遇见用css模拟Bootstrap的栅格布局,学习了一下.发现这个很有用,用来在不同的平台上得到很好地用户体验,比如Phone.Pad.大屏幕显示器.小屏幕显示器.自己模拟用css写了一下 ...
- Bootstrap响应式布局
Bootstrap响应式布局可以使用栅格化系统,其实就是不同的列组合,配合起来便能组合出强大的功能,系统会自动分为最多12列,超出12列会作为一个整体另起一行,像制作表格table的合并列,功能跟co ...
- 2017年最新基于Bootstrap 4 的专业、多用途响应式布局的系统模板
本文分享一款2017年最新的2017年最新基于Bootstrap 4 的专业.多用途响应式布局的系统模板,该模板是一款强大并且非常灵活的后台管理系统模板:能适应绝大多数的web应用程序开发,比如:AP ...
- 前端框架bootstrap(响应式布局)入门
Bootstrap,是基于HTML,CSS.javascript的前端框架 该框架已经预定义了一套CSS样式和与样式相对应的js代码(对应的样式有对应的特效.) 开发人员只需要编写HTML结构,添加b ...
- Bootstrap响应式布局介绍
一.响应式布局 1.什么是响应式网页 2.响应式网页必须做到的几件事 1.布局,使用流式布局(默认文档流+浮动)+弹性布局+栅格布局 2.文字和图片大小随着容器大小改变 3.媒体查询技术(css3) ...
- 响应式布局中的CSS相对量
一个响应式布局,要能够根据设备屏幕尺寸的改变,动态的调整页面内容,展现不同的设计风格. 在进行响应式的 CSS 代码编写过程中,经常会用到一些相对尺寸,以达到相对定位的目的.例如,常见的响应式布局中需 ...
- bootstrap响应式布局原理
百分比布局+媒体查询 首先通过媒体查询确认container的宽度,每个col-xx-xx都是通过百分比定义的,屏幕尺寸变化了,container就变化了,col自然就变了 Bootstrap的官方解 ...
- Bootstrap响应式布局(1)
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- bootstrap 响应式布局
先上点媒体查询css(某个著名的”段子“),跟bootstrap无关: <html> <head> <style> body { background-color: ...
- bootstrap响应式布局简单实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
随机推荐
- ceph安装Dashboard并开启Object Gateway管理功能
安装配置dashboard Ceph-Dashboard 是用 Python 开发的一个 Ceph 的监控面板,用来监控 Ceph 的运行状态.同时 提供 REST API 来访问状态数据. 低版本的 ...
- 第二章:视图层 - 10:动态生成PDF文件
可以通过开源的Python PDF库ReportLab来实现PDF文件的动态生成. 一.安装ReportLab ReportLab库在PyPI上提供,可以使用pip来安装: $ pip install ...
- 使用kuboard界面配置springcloud的其中一个模块设置环境变量,使用nacos配置地址等有关设置
总结: 工作负载类型是StatefulSet的pod,不论其上层的service是nodeport还是Headless, 对外提供的地址格式是: <pod name>.<servic ...
- Apache Dolphin Scheduler 3.0.1 发布,对核心及UI相关进行优化
点亮 ️ Star · 照亮开源之路 GitHub:https://github.com/apache/dolphinscheduler 版本发布 感谢本次的 Release Manager -- ...
- day48-JDBC和连接池04
JDBC和连接池04 10.数据库连接池 10.1传统连接弊端分析 传统获取Connection问题分析 传统的 JDBC 数据库连接使用DriverManager来获取,每次向数据库建立连接的时候都 ...
- Linux基础_7_文本显示
注:实质是针对标准输出文本的各种骚操作! 简单查看 注:初略加工后进行显示. cat -n 文件名 #查看文件内容并显示行号 tac 文件名 #逆序查看 more 文件名 less 文件名 #按?搜索 ...
- vue3学习记录(新特性)
总概 1) 性能提升 打包大小减少 41% 初次渲染快 55%,更新渲染快 133% 内存减少 54% 使用 Proxy 代替 defineProperty 实现数据响应式 重写虚拟 DOM 的实现和 ...
- LcdTools如何编写MIPI指令(初始化代码)
在LcdTools帮助文档中查看MIPI读写指令描述,如下图 编写LCM初始化代码就是配置LCM Driver IC寄存器值,一般只需用MipiWrite()指令写参数即可:下面介绍MipiWrite ...
- JMETER与BeanShell
变量 Beanshell应用自定义变量有两种方法: #第一种方法,使用${key}格式,但是需要注意这是用应用的变量是没有定义数据类型的 #log.info(String Key)只能打印字符串,所以 ...
- Oracle:ORA-39006、ORA-39213解决办法
执行Oracle数据库导入,遇到报错ORA-39006: internal error.ORA-39213: Metadata processing is not available.这还是第一次遇到 ...