10使用CSS美化页面
技术交流QQ群:1027579432,欢迎你的加入!
本教程来源于B站杨仕航Django2.0开发视频教程,如需转载,必须注明来源!
1.页面设计
2.导航栏设计
- 打开blog文件夹的urls.py文件,在文件中添加博客列表blog_list页面的路由,如下所示:
from django.urls import path from . import viewsurlpatterns = [# http:localhost:8000/blog/1path('', views.blog_list, name="blog_list"),path('<int:blog_pk>', views.blog_detail, name="blog_detail"),path('type/<int:blog_type_pk>', views.blogs_with_type, name="blogs_with_type"), ]
- 打开mysite文件夹目录下的templates文件夹下的base.html文件,在首页中增加首页和博客两个显示的标题,如下所示:
<!DOCTYPE html> <html lang="en"> <head><title>{% block title %}{% endblock %}</title><meta charset="UTF-8"> </head> <body><div><a href="{% url 'home' %}"><h3>个人博客网站</h3></a><a href="/">首页</a><a href="{% url 'blog_list' %}">博客</a></div><hr>{% block content %} {% endblock %} </body> </html>
- 接着在mysite文件目录下,创建首页的请求处理的方法views.py文件,文件的内容如下:
from django.shortcuts import render_to_responsedef home(request):context = {}return render_to_response("home.html", context)
- 然后,打开mysite文件目录下的templates文件夹,然后创建网站首页的模板页面home.html,内容如下所示:
{% extends 'base.html' %}{% block title %}我的网站|首页 {% endblock %}{% block content %}<h3>欢迎访问我的网站,随便看</h3> {% endblock %}
- 最后,需要对博客首页的路由进行修改,打开mysite文件目录下的urls.py文件,修改原始文件中打开首页的路由:
from django.contrib import admin from django.urls import include, path from . import viewsurlpatterns = [# 博客首页path('', views.home, name="home"), # 博客首页的路由已经修改!path('admin/', admin.site.urls),path('blog/', include('blog.urls')),]
3.使用CSS
- 使用CSS对HTML进行修饰,CSS即层叠样式表。对首页的前端页面进行CSS美化,打开base.html文件,添加如下内容:
<!DOCTYPE html> <html lang="en"> <head><title>{% block title %}{% endblock %}</title><meta charset="UTF-8"> </head> <body><div class="nav"><a class="logo" href="{% url 'home' %}"><h3>个人博客网站</h3></a><a href="/">首页</a><a href="{% url 'blog_list' %}">博客</a></div>{% block content %} {% endblock %}<style>* {margin: 0;padding: 0;}div.nav {background-color: #eee;border-bottom: 1px solid #ccc;}div.nav a {text-decoration: none;color: #000;padding: 10px 5px;}div.nav a.logo {display: inline-block;font-size: 120%;}</style> </body> </html>
- 同时,对网站首页的前端页面home.html进行CSS美化,添加如下内容:
{% extends 'base.html' %}{% block title %}我的网站|首页 {% endblock %}{% block content %}<h3 class="home-content">欢迎访问我的网站,随便看</h3><style>h3.home-content {font-size: 222%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}</style> {% endblock %}
4.使用静态文件
- 在项目根目录下创建静态文件夹static,如下图所示。在static文件夹下创建base.css文件,内容如下所示。这样就可以解决上一小节中在HTML中嵌入CSS代码的混乱感。
* {margin: 0;padding: 0; }div.nav {background-color: #eee;border-bottom: 1px solid #ccc; }div.nav a {text-decoration: none;color: #000;padding: 10px 5px; }div.nav a.logo {display: inline-block;font-size: 120%; }
- 打开mysite文件夹下的全局设置文件settings.py,在该文件的最后添加静态文件夹static所存放的位置,添加如下内容所示:
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static'), ]
- 在base.html文件中引入static文件夹下的base.css文件,有两种方法:下面采用方法1。此时,base.html文件如下所示:
<!-- 方法2:引入static文件夹下的base.css文件 --> {% load staticfiles %} <!DOCTYPE html> <html lang="en"> <head><title>{% block title %}{% endblock %}</title><meta charset="UTF-8"><!-- 方法1:引入static文件夹下的base.css文件 --><link rel="stylesheet" href="/static/base.css"><!-- 方法2:引入static文件夹下的base.css文件 --><!-- <link rel="stylesheet" href="{% static 'base.css' %}"> --> </head> <body><div class="nav"><a class="logo" href="{% url 'home' %}"><h3>个人博客网站</h3></a><a href="/">首页</a><a href="{% url 'blog_list' %}">博客</a></div>{% block content %} {% endblock %} </body> </html>
- 同理,在static文件夹下创建home.css,然后将home.html中的CSS代码剪切至home.css中。如下所示:
h3.home-content {font-size: 222%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%); }
- 由于home.html文件是对base.html文件的拓展,于是,对base.html文件进行修改增加模板标签**{% block header_extends %}{% endblock %}**,修改后的文件内容如下所示:
<!DOCTYPE html> <html lang="en"> <head><title>{% block title %}{% endblock %}</title><meta charset="UTF-8"><link rel="stylesheet" href="/static/base.css">{% block header_extends %}{% endblock %} </head> <body><div class="nav"><a class="logo" href="{% url 'home' %}"><h3>个人博客网站</h3></a><a href="/">首页</a><a href="{% url 'blog_list' %}">博客</a></div>{% block content %} {% endblock %} </body> </html>
- 最后,在home.html中对模板标签**{% block header_extends %}{% endblock %}**进行详细说明。因此需要在home.html中引入home.css才能对博客首页的前端页面进行CSS美化,此处使用方法2进行引入CSS文件。home.html文件中的内容如下:
{% extends 'base.html' %}{% load staticfiles %}{% block title %}我的网站|首页 {% endblock %}{% block header_extends %}<link rel="stylesheet" href="{% static 'home.css' %}"> {% endblock %}{% block content %}<h3 class="home-content">欢迎访问我的网站,随便看</h3> {% endblock %}
10使用CSS美化页面相关推荐
- Java学习-14 CSS与CSS3美化页面及网页布局
Java学习-14 CSS与CSS3美化页面及网页布局 1. CSS简介 什么是CSS? CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示控制 HTML 元素, ...
- 前端(五)——CSS之美化页面
文章目录 1. 美化页面原因 2. span标签 3. 字体样式 4. 文本样式 5. 超链接伪类 6. 列表 7. 背景 8. 渐变 9. 盒子模型 1. 美化页面原因 有效的传递页面信息 美化网页 ...
- CSS入门二、美化页面元素
零.文章目录 CSS入门二.美化页面元素 1.字体属性 CSS Fonts (字体)属性用于定义字体系列.大小.粗细.和文字样式(如斜体) (1)字体系列font-family font-family ...
- 前段html css部分试卷,CSS美化试卷页面
经CSS美化后的试卷页面 使用CSS美化前面做的纯HTML页面,实现如上的效果. *-- 第一步: 使用text-align:center实现将标题居中,width:auto使宽度自适应,height ...
- Form 表单详解:案例、CSS 美化
本文要点: 常见表单 表单的性质 表单CSS美化 使用 radio 实现 Tab 选项卡 什么是表单 用户通过表单填写信息,然后通过计算机网络传送给服务器.表单标签不是一个标签,而是一组标签,因为不同 ...
- 04-前端技术_CSS与CSS3美化页面
目录 二,CSS与CSS3美化页面 1,CSS简介 1.1 什么是CSS? 1.2 样式层叠次序 2,CSS基础语法 2.1 介绍 2.2 注释 3,CSS使用方式 3.1 如何插入样式表 3.2 外 ...
- h5、select下拉框右边加图标,深度美化页面增进用户体验
h5.select下拉框右边加图标,深度美化页面增进用户体验 1.那么我们先来看一下效果吧! 2.再看看h5的结构: <div id="login-div"><d ...
- 使用CSS对页面加载的淡入效果
本文翻译自:Using CSS for fade-in effect on page load Can CSS Transitions be used to allow a text paragrap ...
- 每个网页设计师应该知道的10条CSS规则
通过网页设计师的大量CSS经验,我们会记住所有种代码语法,兼容性和片段.有一些特定的CSS,可以真正帮助改变你的网站设计改变较旧的技术规则和声明.这里是我收集到的很有用的10条CSS规则 @media ...
最新文章
- MATLAB【十四】————调用深度库生成exe,批量运行三层文件夹下图片,保存结果
- 人工智能在能源行业的5个应用
- Spring/Spring Boot微服务项目 集成Druid 实现监控功能
- Hibernate 性能优化之二级缓存
- 查看移动平均价的历史记录
- golang的mahonia字符集转换工具用法
- 单片机与gsm通信c语言,gsm模块如何与单片机通信?
- element-ui多选框模糊搜索输入文字闪动问题
- for range循环通道
- echarts 饼图移动端_VUE移动端项目中使用Echart
- ES6学习摘要(03)(新人学习)
- go - 构造复杂json串
- python基础之pip、.pyc、三元运算、进制、一切皆对象、可变与不可变类型
- python列表模糊匹配_Python下用List对员工信息表进行模糊匹配
- 利用matlab实现pid控制,利用Matlab实现PID控制仿真
- Leetcode DAY6: 有效的字母异位词 and 两个数组的交集 and 快乐数 and 两数之和
- 非对称加密之公钥密码体系 【五】
- 形式化、半形式化和非形式化
- Android Studio新建工程及测试效果
- 泛读论文:Person-reID 行人重识别合集
热门文章
- 行业深度见解•SD-WAN对于企业云的重要性
- 美研究最新生物活性玻璃 可消灭致命的细菌
- 基于 react, redux 最佳实践构建的 2048
- 如何下载DELL服务器VMware ESXi镜像
- IntelliJ IDEA 2016.3.1 学习git 码云插件 学习笔记
- Percona XtraDB Cluster(转)
- 架构设计:生产者/消费者模式 第6页:环形缓冲区的实现
- oracle数据库备份恢复篇(一)
- 使用VMware Workstation搭建基于Linux的Oracle 10g RAC
- 千万级流量的大型分布式系统架构设计