使用栅格系统开发响应式页面——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布局时的可行方式与小技巧.经验均从实践中总结, ...
随机推荐
- debug:am trace-ipc源码分析
debug:am trace-ipc源码分析 目录 debug:am trace-ipc源码分析 一.使用 官网介绍 命令提示 小结 二.源码分析 ActivityManagerShellComman ...
- Python -- 让程序运行后不立即关闭窗口
程序运行完毕,窗口也跟着关闭.也就是说还没来得及看结果,程序窗口就关闭了. 试着改改代码,在最后加上以下这行代码: raw_input("Press <enter>") ...
- Electron 开发音视频
废话不多说,咱直接进入正题! 创建 Electron 项目 前提条件 在使用Electron进行开发之前,需要安装 Node.js. 要检查 Node.js 是否正确安装,请在您的终端输入以下命令: ...
- Spring Cloud分区发布实践(3) 网关和负载均衡
注意: 因为涉及到配置测试切换, 中间环节需按此文章操作体验, 代码仓库里面的只有最后一步的代码 准备好了微服务, 那我们就来看看网关+负载均衡如何一起工作 新建一个模块hello-gateway, ...
- Spring Cloud分区发布实践(1) 环境准备
最近研究了一下Spring Cloud里面的灰度发布, 看到各种各样的使用方式, 真是纷繁复杂, 眼花缭乱, 不同的场景需要不同的解决思路. 那我们也来实践一下最简单的场景: 区域划分: 服务分为be ...
- SaaS技术栈有多复杂?
[特别声明:本文基于Tools and Services I Use to Run My SaaS进行修改.] 软件SaaS化由于需要考量架构的各个方面,所以需要的技术栈非常全面. 以一个客户管理Sa ...
- rot位移密码详解(rot5、rot13、rot18、rot47)
最近训练CTF的时候,发现密码学这块的知识不太系统,所以自己接下来会陆陆续续整理出来 rot密码 rot密码其实可以看作是凯撒密码的一种变式 本质都是移位运算 rot密码按种类大致分为以下几类 rot ...
- JVM 内存分配、调优案例
内存分配 对象优先在Eden区分配 大多数情况下,对象在新生代Eden区中分配.当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC. HotSpot虚拟机提供了-XX:+PrintG ...
- jmeter之json提取器详解
Json提取器详解 *Apply to:参照正则表达式提取器 *Names of created:自定义变量名. 变量名可以填写多个,变量名之间使用分号进行分隔. 一旦变量名有多个,则下方的json ...
- c++ 跨平台线程同步对象那些事儿——基于 ace
前言 ACE (Adaptive Communication Environment) 是早年间很火的一个 c++ 开源通讯框架,当时 c++ 的库比较少,以至于谈 c++ 网络通讯就绕不开 ACE, ...