使用栅格系统开发响应式页面——logo+nav实例
小屏时:

中屏及以上时:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>4-4编程练习(2)</title>
<link rel="stylesheet" href="css/grid.css" />
<style>
*{
margin: 0;
padding: 0;
box-sizing: border-box;
}
li{
list-style: none;
}
a{
text-decoration: none;
} .nav-item{
line-height: 70px;
margin-left: 20px;
cursor: pointer;
}
.nav-item:hover{
color: red;
}
.nav-content{
display: flex;
}
.container{
height: 70px;
width: 100%;
border-bottom: 1px solid #dadada;
}
.btn-wrap{
width: 70px;
height: 70px;
border-radius: 0 100% 0 0;
background: red;
}
.btn-line{
width: 30px;
height: 4px;
border-radius: 2px;
display: block;
background: #fff;
position: relative;
top: 20px;
margin: 10px 0;
} .row,
.logo-wrap,
.head-logo,
img{
height: 100%;
}
img{
vertical-align: top;
border: none;
}
.nav-dropdown{
overflow: hidden;
background: #e5e5e5;
height: 0;
transition: all 0.5s;
}
.nav-dropdown-item{
line-height: 40px;
display: block;
border-bottom: 1px solid #b0b0b0;
text-indent: 20px;
color: #666;
font-size: 15px;
}
.no-line{
border: none;
}
.nav-dropdown-item:hover{
color: red;
}
.nav-dropdown-item-active{
height: 122px;
}
</style>
</head>
<body>
<div class="container">
<div class="row">
<div class="btn-wrap col-2 d-md-none" id="btn">
<span class="btn-line"></span>
<span class="btn-line"></span>
</div>
<div class="nav-wrap col-md-5 d-none d-md-block ">
<ul class="nav-content">
<li class="nav-item">首页</li>
<li class="nav-item">关于</li>
<li class="nav-item">商业合作</li>
</ul>
</div>
<div class="logo-wrap col-7 col-offset-3 col-md-offset-0 col-md-7">
<a href="#" class="head-logo">
<img src="img/logo.png" />
</a>
</div>
</div> </div>
<div class="nav">
<ul class="nav-dropdown" id="nav">
<li><a href="#" class="nav-dropdown-item">首页</a></li>
<li><a href="#" class="nav-dropdown-item">关于</a></li>
<li><a href="#" class="nav-dropdown-item no-line">商业合作</a></li>
</ul>
</div> <script>
btn.onclick = function(){
if(nav.classList.contains('nav-dropdown-item-active')){
nav.classList.remove('nav-dropdown-item-active');
}else{
nav.classList.add('nav-dropdown-item-active');
}
} </script>
</body>
</html>
使用栅格系统开发响应式页面——logo+nav实例的更多相关文章
- bootstrap快速入门笔记(二)-栅格系统,响应式类
一,栅格系统大致有以下: 1,行row必须包含在 .container (固定宽度)或 .container-fluid (100% 宽度)中,一行有12列 2.“列(column)”在水平方向创建一 ...
- bootstrap_栅格系统_响应式工具_源码分析
-----------------------------------------------------------------------------margin 为负 使盒子重叠 等高 等高 ...
- bootstrap的栅格系统和响应式工具
关于bootstrap的响应式布局,昨天看了杨老师的视频教学https://www.bilibili.com/video/av18357039豁然开朗,在这里记录一下 一:meta标签的引用 < ...
- 使用栅格系统和flex布局开发响应式页面源码
响应式布局的原理xsmall <576pxsmall >=576pxmedium >=768pxlarge >=992pxxlarge >=1200px 接下来是效果图 ...
- python 全栈开发,Day57(响应式页面-@media介绍,jQuery补充,移动端单位介绍,Bootstrap学习)
昨日内容回顾 ajax //get post 两种方式 做 请求 get 主要是获取数据 post 提交数据 同一个路由地址 既可以是get请求也可以是post请求 一个路由对应一个函数 get请求 ...
- html5/css3响应式页面开发总结
一,自适应和响应式的区别 自适应是一套模板适应所有终端,但每种设备上看到的版式是一样的,俗称宽度自适应. 响应式一套模板适应所有终端,但每种设备看到的版式可以是不一样的. 虽然响应式/自适应网页设计会 ...
- HTML5入门教程:响应式页面布局
摘自:https://www.sohu.com/a/225633935_647584 随着互联网时代的发展,我们对网页布局有了新的要求,大气,美观,能够在不同的设备上呈现令人焕然一新的效果.此时,一个 ...
- 使用Bootstrap 3开发响应式网站实践01,前期准备、导航区域等
"使用Bootstrap 3开发响应式网站实践"系列,将使用Bootstrap 3.2制作一个自适应网站,无论是在电脑.平板,还是手机上,都呈现比较好的效果.在电脑浏览器上的最终效 ...
- Windows10 UWP开发 - 响应式设计
Windows10 UWP开发 - 响应式设计 本篇随笔与大家简单讨论一下在开发适配不同分辨率.宽高比的Windows10 Universal App布局时的可行方式与小技巧.经验均从实践中总结, ...
随机推荐
- 第九篇 -- 对数据库mysql进行连接并压测(二)
上一节介绍了对mysql查询语句的压测,这一节来进一步的了解. 还是先把数据库的图放上来. 接下来打开Jmeter. 1. 回顾一下上一节学的查询语句 JDBC Request配置 结果 2. 条件查 ...
- jsp-->js-->jsp之间的关系
jsp和js通过form.submit();发送request请求createdIdSave.jsp 在CreatedIdSave.jsp中进行BL的增删改查操作,在jsp中将值保存到页面的scrip ...
- 字符串匹配算法(三)-KMP算法
今天我们来聊一下字符串匹配算法里最著名的算法-KMP算法,KMP算法的全称是 Knuth Morris Pratt 算法,是根据三位作者(D.E.Knuth,J.H.Morris 和 V.R.Prat ...
- 原来select语句在MySQL中是这样执行的!看完又涨见识了!这回我要碾压面试官!
大家好,我是冰河~~ MySQL作为互联网行业使用最多的关系型数据库之一,与其免费.开源的特性是密不可分的.然而,很多小伙伴工作了很多年,只知道使用MySQL进行CRUD操作,这也导致很多小伙伴工作多 ...
- phpmyadmin scripts/setup.php 反序列化漏洞(WooYun-2016-199433)
phpmyadmin 2.x版本 POST /scripts/setup.php HTTP/1.1 Host: 192.168.49.2:8080 Accept-Encoding: gzip, def ...
- 比@EnableMongoAuditing功能强大的实现
问题出现 以前通过@EnableMongoAuditing.@CreateDate.@LastModifiedDate进行实体类创建时间.修改时间的自动管理. 但为了实现多数据源的管理以及切换,自己覆 ...
- anyRTC Web SDK 实现音视频呼叫功能
前言 大家好,今天小编带给大家一个基于 anyRTC Web SDK 实现音视频呼叫的功能(本项目采用vue开发). 前提条件 在开始写代码之前还需要做一些准备工作,如果你之前没有使用过 anyRTC ...
- 电脑软件安装过程文档.BA
MD 01-打印并阅读-电脑软件安装过程文档.BAT-即此批处理脚本文档MD 02-阅读-电脑软件安装经验教训文档.DOCX-MD 03-制作-杏雨梨云USB维护系统2019中秋版之国庆更新-可启动U ...
- Flutter学习(7)——网络请求框架Dio简单使用
原文地址: Flutter学习(7)--网络请求框架Dio简单使用 | Stars-One的杂货小窝 Flutter系列学习之前都是在个人博客发布,感兴趣可以过去看看 网络请求一般APP都是需要的,在 ...
- css伪类(:before和:after)
:before和:after的作用就是在指定的元素内容(而不是元素本身)之前或者之后插入一个包含content属性指定内容的行内元素,最基本的用法如下: #example{ width:300p ...