系列文章目录
前端
学习入门之html+css的使用
文章目录
- 系列文章目录
- 前言
- 一、页面效果?
- 二、具体实现代码
- 1.引入bootstrap
- 2.index.html
- 3.index.css
- 4.图片
- 5.文件结构
- 总结
前言
这个小页面是大一暑假学习html+css做的小案例——响应式页面布局,使用了bootstrap框架
一、页面效果
全屏显示
移动缩小屏幕后
缩小到最小屏
二、具体实现代码
1.引入bootstrap库(网上有教程)
2.index.html
代码如下(示例):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!--[if lt IE 9]>
<script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
<![endif]-->
<!-- 一定不要忘记引入bootstrap的样式文件 -->
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
<!-- 引入首页样式文件 -->
<link rel="stylesheet" href="css/index.css">
<title>Document</title>
<style>
/* 利用我们自己写的样式覆盖原先的样式 ,若权重不够加!important*/
.login {
width: 200px;
}
</style>
</head>
<body>
<div class="container">
<div class="row">
<header class="col-md-2">
<div class="logo">
<a href="">
<img src="images/蜡笔9.jpg" alt="" class="hidden-xs">
<span class="visible-xs">小新小天地</span>
</a>
</div>
<div class="nav">
<ul>
<li><a href="" class="glyphicon glyphicon-camera">生活日记</a></li>
<li><a href=""class="glyphicon glyphicon-picture">自然乐园</a></li>
<li><a href=""class="glyphicon glyphicon-phone">科技潮物</a></li>
<li><a href=""class="glyphicon glyphicon-gift">新奇趣事</a></li>
<li><a href=""class="glyphicon glyphicon-glass">美食记录</a></li>
</ul>
</div>
</header>
<article class="col-md-7">
<!-- 新闻 -->
<!-- 清除浮动 -->
<div class="news clearfix">
<ul>
<li>
<a href="">
<img src="images/小心4.jpg" alt="">
<p>小新百秀</p>
</a>
</li>
<li>
<a href="">
<img src="images/1小心1.jfif" alt="">
<p>可可爱爱,惹人喜爱,认真刷牙!</p>
</a>
</li>
<li>
<a href="">
<img src="images/1小心2.jfif" alt="">
<p>冬日一碗热腾腾的泡面,香香的!</p>
</a>
</li>
<li>
<a href="">
<img src="images/1小心6.jfif" alt="">
<p>平安夜的苹果🍎!</p>
</a>
</li>
<li>
<a href="">
<img src="images/1小心5.jfif" alt="">
<p>小新和小白❤!</p>
</a>
</li>
</ul>
</div>
<!-- 发表 -->
<div class="publish">
<div class="row">
<div class="col-md-9 bg-info"" >
<h3>蜡笔小新 (臼井仪人创作的漫画作品)</h3>
<p class="text-muted">原版名称クレヨンしんちゃん</p>
<p class="text-info hidden-xs">1990年8月,在《weekly漫画action》上开始连载。1992年,根据漫画改编的同名动画在朝日电视台播出。</p>
<p class="text-warning hidden-xs">类 型生活,搞笑,校园</p>
</div>
<div class="col-md-3 pic hidden-xs">
<img src="images/蜡笔10.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-md-9 bg-success" >
<h3>蜡笔小新 (臼井仪人创作的漫画作品)</h3>
<p class="text-muted">原版名称クレヨンしんちゃん</p>
<p class="text-info hidden-xs">1990年8月,在《weekly漫画action》上开始连载。1992年,根据漫画改编的同名动画在朝日电视台播出。</p>
<p class="text-warning hidden-xs">类 型生活,搞笑,校园</p>
</div>
<div class="col-md-3 pic hidden-xs">
<img src="images/蜡笔8.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-md-9 bg-warning" >
<h3>蜡笔小新 (臼井仪人创作的漫画作品)</h3>
<p class="text-muted">原版名称クレヨンしんちゃん</p>
<p class="text-info hidden-xs">臼井仪人先生说之所以会创造出小新这个形象,是因为他在观察自己的孩子的时候,发现小孩子的想法往往非常独特,以至于作者被小孩的世界所吸引。所有的小孩都有乖巧和调皮的两面性。这种两面性对作者来讲是十分有趣的。反过来作者正是在自己的作品中反映了这一两面性。他同时承认“小新”有一部分是他自己的翻版。据他透露,蜡笔小新里有许多内容是他现实生活的写照,例如:小新爸爸造型与他本人有些相似;小新和他爸爸两道浓眉毛乃是因作者自己嫌弃自己的眉毛太稀疏 [5] 。</p>
<p class="text-warning hidden-xs">类 型生活,搞笑,校园</p>
</div>
<div class="col-md-3 pic hidden-xs">
<img src="images/蜡笔4.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-md-9 bg-danger" >
<h3>蜡笔小新 (臼井仪人创作的漫画作品)</h3>
<p class="text-muted">原版名称クレヨンしんちゃん</p>
<p class="text-info hidden-xs">1990年8月,在《weekly漫画action》上开始连载。1992年,根据漫画改编的同名动画在朝日电视台播出。</p>
<p class="text-warning hidden-xs">类 型生活,搞笑,校园</p>
</div>
<div class="col-md-3 pic hidden-xs">
<img src="images/蜡笔3.jpg" alt="">
</div>
</div>
<div class="row">
<div class="col-md-9 bg-info"" >
<h3>蜡笔小新 (臼井仪人创作的漫画作品)</h3>
<p class="text-muted">原版名称クレヨンしんちゃん</p>
<p class="text-info hidden-xs">1990年8月,在《weekly漫画action》上开始连载。1992年,根据漫画改编的同名动画在朝日电视台播出。</p>
<p class="text-warning hidden-xs">类 型生活,搞笑,校园</p>
</div>
<div class="col-md-3 pic hidden-xs">
<img src="images/蜡笔10.jpg" alt="">
</div>
</div>
</div>
</article>
<aside class="col-md-3 ">
<a href="" class="banner">
<img src="images/蜡笔6.jpg" alt="">
</a>
<a href="" class="hot">
<span class="btn btn-success">热搜</span>
<h4 class="text-primary">欢迎来到小新快乐天地!</h4>
<p class="text-muted">小新是一个年仅5岁,正在幼儿园上学的小男孩。他内心早熟,喜欢欣赏并向美女搭讪。最初小新与父亲广志和母亲美伢组成一个三人家族。随后又添加了流浪狗小白,日子频繁琐碎却不乏温馨感动。随着故事展开,又加入了新的成员妹妹野原向日葵 [6] 。</p>
</a>
</aside>
</div>
</div>
</body>
</html>
3.index.css
ul {
list-style-type: none;
margin: 0;
padding: 0;
}
a {
color: #666;
text-decoration: none;
}
a:hover {
text-decoration: none;
}
body {
background-color: #f5f5f5;
}
.container {
background-color: #fff;
}
/* 修改container的最大宽度为 1280,根据设计稿来走 */
@media screen and (min-width: 1280px) {
.container {
width: 1280px;
}
/* 剩下的按照自己规定的区划分 */
}
/* header */
header {
padding-left: 0!important;
}
.logo {
background-color:cornflowerblue;
}
.logo img {
/* width: 100%; */
/* 小屏显示 */
/* logo图片不需要缩放 */
max-width: 100%;
margin: 0 auto;
}
/* 我们如果进入超小屏幕下,logo里面的图就隐藏 */
/* 事先准备好一个盒子,它平时是隐藏,只有在超小屏幕显示 */
.logo span {
display: block;
height: 50px;
line-height: 50px;
color: #fff;
font-size: 18px;
text-align: center;
}
.nav {
background-color: #eee;
border-bottom: 1px solid #ccc;
}
.nav a {
display: block;
height: 50px;
line-height: 50px;
padding-left: 30px;
font-size: 16px;
}
.nav a:hover {
background-color: #fff;
color: #333;
}
.nav a::before {
vertical-align: middle;
padding-right: 5px;
}
/* 当我们进入 小屏幕还有超小屏幕的时候 我们nav里面的li浮动起来,并且宽度为 20% */
@media screen and (max-width: 991px) {
.nav li {
float: left;
width: 20%;
}
article {
margin-top: 10px;
}
}
/* 当我们进入超小屏幕下,我们的文字会变小 */
@media screen and (max-width: 768px) {
.nav li a {
font-size: 14px;
padding-left: 3px;
}
/* 当我们处于超小屏幕下,第一个li宽度为100%,其余占50% */
.news li:nth-child(1) {
width: 100%!important;
}
.news li {
width: 50%!important;
}
.publish h3 {
font-size: 14px;
}
.publish p {
font-size: 10px;
}
}
.news li {
float: left;
width: 25%;
height: 128px;
padding-right: 10px;
margin-bottom: 10px;
}
.news li a {
position: relative;
/* 行内元素没有大小 */
display: block;
width: 100%;
height: 100%;
/* background-color: red; */
}
.news li:nth-child(1) {
width: 50%;
height: 266px;
/* background-color: pink; */
}
/* 当我们处于超小屏幕下,第一个li宽度为100%,其余占50% */
.news li:nth-child(1) p {
line-height: 41px;
font-size: 20px;
padding: 0 10px;
}
.news li a img {
width: 100%;
height: 100%;
}
.news li a p {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 39px;
padding: 5px 10px;
margin-bottom: 0;
background: rgba(0,0,0,.5);
font-size: 12px;
color: #fff;
}
.publish {
border-top: 1px solid #ccc;
}
.publish .row {
border-bottom: 1px solid #ccc;
padding: 10px 0;
}
.pic {
margin-top: 10px;
}
.pic img {
width: 100%;
}
.banner img {
width: 100%;
}
.hot {
display: block;
margin-top: 20px;
padding: 0 20px;
border: 1px solid rgba(204, 204, 204, 0.591);
}
.hot span {
border-radius: 0;
margin-bottom: 20px;
}
.hot p {
font-size: 12px;
}
4.图片
5.文件结构
总结
这个小案例是前年暑假练习写的,记录一下。响应式页面布局,比较适合刚入门前端的小伙伴。