Python 实战 · 从 0 到 1 搭建直播视频平台
Barry
某上市公司技术研发总监
3717 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 42 讲
Python 实战 · 从 0 到 1 搭建直播视频平台
15
15
1.0x
00:00/00:00
登录|注册

09|ElementU & CSS:如何设计页面逻辑与功能点?

你好,我是 Barry。
我们都知道网站的美观性非常重要,不同的网站也会有不同的设计风格。比如工具类网站一般比较简洁,娱乐类的网站一般比较丰富多彩,办公类网站比较商务,学习类的网站比较学院风。
我们的视频平台是娱乐性质的网站,应该丰富多彩,比较有活力。而平台众多页面中,首页是用户进入一个平台的入口,也是流量最大的地方。
这节课,我们就从首页入手,一起来应用前面讲过的 CSS + Element-UI ,学习一下如何设计和实现页面的开发。

首页该如何设计?

我们先来思考一下,网站首页应该如何设计。
首页最直接的作用就是把平台的主要功能展示给用户。不过首页要展示的东西通常比较多,所以需要设计分区,每个分区负责展示一类事物。
为了方便你理解,我们一起观察一些常见的网站都是怎么做的。首先来看看百度,可以看到百度首页核心的搜索功能放在了 Header 的下面,再往下放的是一些次要的功能——推荐和热搜。
核心功能、推荐和热搜这三块就形成了首页的三个分区。
我们再来看一下京东的页面。
可以看到,Header 下面是核心商品搜索功能和各项菜单栏,中间是广告轮播区。再往下是相对重要的秒杀商品,接下来是各种频道和商品。
例子看完了,我们再来归纳总结一下。首页的定位是要展示一个网站具有的功能,同时也像分发器一样是跳转到其他页面的开始。首页需要按功能做分区,核心位置要突出展示核心功能,按重要程度依次往下。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文详细介绍了如何使用CSS和Element-UI来设计和实现网页的页面逻辑与功能点。作者首先强调了首页设计的重要性,指出首页应展示网站的主要功能,并需要设计分区来展示不同类别的内容。随后,文章回顾了CSS的常用属性,包括背景色、透明度、字行高和字加粗、鼠标样式、边框、布局、定位和悬浮效果。然后,文章介绍了Element-UI的应用,特别是轮播图组件的使用。作者提到Element-UI是基于Vue 2.0的桌面端组件库,具有良好的稳定性和可用性,可以轻松集成在项目中。最后,作者给出了轮播图组件的代码示例,并说明了如何在项目中实现对应的效果。整篇文章通过实际案例和代码示例,详细介绍了如何使用CSS和Element-UI来设计和实现网页的页面逻辑与功能点。文章内容涵盖了按钮组件、弹窗组件以及首页的实现,通过具体的代码和数据定义,展示了如何使用CSS和Element-UI来实现网页的各个功能模块。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 实战 · 从 0 到 1 搭建直播视频平台》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(11)

  • 最新
  • 精选
  • radeon
    根据老师的vue2代码主体逻辑,我使用vue3+ts搭建了项目,对于项目文件结构不清晰或者想用vue3的朋友们可以看过来,现在已完成首页静态页面部分,代码已发布在github以及gitee,并使用MIT协议开源,欢迎大家前来指点或者在此基础上继续开发或改进! github: https://github.com/0x3147/just-see-it gitee: https://gitee.com/kang-jiaxing/just-see-it

    作者回复: 为你点赞,太棒了,大家可以参考学习,在学习的过程中我们重点关注使用不同语言实现具体的功能需求。鼓励大家在掌握基础应用方法之后,能够不断衍生,我们一起加油!!!

    2023-07-03归属地:中国香港
    2
  • 浩仔是程序员
    sudo npm install --save vue-content-loader Password: npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: vue-test-1@1.0.0 npm ERR! Found: vue@2.7.14 npm ERR! node_modules/vue npm ERR! vue@"^2.5.2" from the root project npm ERR! npm ERR! Could not resolve dependency: npm ERR! peer vue@"^3" from vue-content-loader@2.0.1 npm ERR! node_modules/vue-content-loader npm ERR! vue-content-loader@"*" from the root project npm ERR! npm ERR! Fix the upstream dependency conflict, or retry npm ERR! this command with --force, or --legacy-peer-deps npm ERR! to accept an incorrect (and potentially broken) dependency resolution. npm ERR! npm ERR! See /Users/kindyli/.npm/eresolve-report.txt for a full report. npm ERR! A complete log of this run can be found in: npm ERR! /Users/kindyli/.npm/_logs/2023-06-17T12_56_24_738Z-debug-0.log

    作者回复: 这一部分可以先注释掉,它在v-else指令当中,主要用于在请求没获取数据的情况下占位展示的,不影响整体的页面的实现。非必需应用。

    2023-06-17归属地:广东
  • 浩仔是程序员
    老师,求助 Module build failed: .icon-fire { .icon("/Users/kindyli/zz/vue-test-1/src/assets/image/Index/icon_fire.png"); ^ .icon is undefined 这个.icon是需要在哪里定义的

    作者回复: 这个不需要在哪里定义,你看看你对应的文件目录下是否有这个图标啊?就是这个路径下的文件是否存在src/assets/image/Index/icon_fire.png。文件存在就没问题。

    2023-06-17归属地:广东
    4
  • 浩仔是程序员
    老师上传的代码好像只有对应的文件,没有完整的项目结构,会缺少部分文件依赖,比如这节这个组件BulletListLoader

    作者回复: 这个是这样的,这个是一个用于展位组件,它不是单独我们开发出来的页面,你可以看下面的导入import { BulletListLoader } from "vue-content-loader";所以你可以直接把它删除掉这个没有关系的,不需要单独开发,我把具体的实现代码都会提交。

    2023-06-17归属地:广东
    2
  • 浩仔是程序员
    老师,你好,点击事件 goDetail(main_recommend) 这个main_recommend这个参数是如何传递的,或者说,一个点击事件,处理点击函数可以传递哪些参数

    作者回复: 是这样的,参数传递你可以直接在函数中传递就可以,参数命名方法和传递参数个数你根据方法的需求设置就好。点击函数一样的道理,你可以从git上看09这节课的全部代码,在methods中有godetail方法,它接受一个参数item,这个item就是main_recommend,你可以自己尝试的用console.log(item)在方法里面打印一下,你就明白了。

    2023-06-17归属地:广东
  • Geek_d671c1
    index文件报错:Cannot find module 'vue-content-loader' or its corresponding type declarations.ts(2307) 你好,请问这个问题如何解决?

    作者回复: 这是一个组件,它可动态加载内容列表。解决办法呢就是你需要安装'vue-content-loader'模块。如果没有安装,可以通过以下命令进行安装:npm install vue-content-loader。当然,这个是非必须的,你会发现源码中写的是V-else,正常情况我们不会执行这一步,你可以先注释掉,也就是import { BulletListLoader } from "vue-content-loader";这一行,以及与BulletListLoader相关的注销掉,你先把项目运行起来。如果还有问题可以追评。

    2023-06-15归属地:浙江
    2
  • coderHOW
    老师,请问一下在 MyHeader 组件中使用 ElementUI 下拉菜单,其中每个 item 都有加上 @click.native,这个和原来不加上 native 有什么区别呢?我搜索了一下我的理解是父组件引入的子组件,如果直接使用@click事件是不会有作用的,使用@click.native就可以触发事件,是不是相当代替$emit的作用呢

    作者回复: 是这样,当你没有使用 @click.native 时,Vue.js 会将事件绑定到组件实例上的一个方法上,然后当事件触发时,会调用这个方法。这种方式允许你在组件中定义一些自定义逻辑,例如在点击事件触发时执行一些特定的操作。 当你使用 @click.native 时,Vue.js 会将事件直接绑定到组件所在的 DOM 元素上,当该元素被点击时,会直接触发原生 DOM 事件,而不会调用组件实例上的方法。这种方式通常用于在组件中需要绑定一些原生的 DOM 事件。 这个和$emit方法不同的,不是用于子父组件中的,$emit是子父组件之间调用方法使用的。这是正解,如果有不理解的可以追问。

    2023-06-14归属地:广东
    2
  • Geek_d671c1
    你好,有整个项目的源码吗,不按照课时区分?

    作者回复: 会按照课时区分,只是有一些单个案例实操的,直接在我们课程中就有了,并且最终会把前后端源码全部上传。

    2023-06-14归属地:浙江
  • Geek_840593
    老师能放一下前端部分的项目结构吗?初学者有点懵

    作者回复: 这个是直接有的,已经上传git,你可以查看这个地址,这个就是我们项目的结构,你可以查看,如果有疑惑的地方可以持续给我留言,https://gitee.com/Barry_Python_web/python_web_code.git

    2023-05-25归属地:重庆
  • Geek_840593
    JSX 表达式必须具有一个父元素?请问这个怎么处理?

    作者回复: 你的这个问题有点模糊,我先给解释一下原因,如果你还有疑问再和我互动。在 JSX 中,表达式必须具有一个父元素,这是 React 的规则。如果你想在 JSX 中使用表达式,并且内部渲染 HTML 元素,这时候必须确保这个元素有一个父元素,否则它就是一个普通的 JSX 元素,而不是一个表达式。想要实现 JSX 表达式具有一个父元素,你可以在 JSX 表达式中使用 ParentElement 函数来包装它,下面我给你写一个代码案例你可以参考:const test = ParentElement('<div>Hello, test!</div>');

    2023-05-19归属地:重庆
收起评论
显示
设置
留言
11
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部