精华内容
下载资源
问答
  • 页面设计原则

    千次阅读 2017-07-25 09:56:12
    页面设计原则 Web作为出版物的一种,同其他出版物如报纸,杂志等在设计上有许多共同之处,也要遵循一些设计的基本原则,不同之处在于每章提到的Web的“非所见即所得”特性和交互性。因此,熟悉一些设计的基本原则...

    页面设计原则


    Web作为出版物的一种,同其他出版物如报纸,杂志等在设计上有许多共同之处,也要遵循一些设计的基本原则,不同之处在于每章提到的Web的“非所见即所得”特性和交互性。因此,熟悉一些设计的基本原则,再对Web的特殊性作一些考虑,便不难设计出美观大方的页面来。如果有美术设计基础,对Web页面的设计会很有帮助。如果不具备这方面的背景知识,那么下面的一些原则将会对有所帮助。

    设计的3C原则

    所谓3C原则是指简洁、一致性、好的对比度。Web页面设计需要遵循这三条原则。

    简洁

    设计并不再现具体的物象和特征,它要表达的是一定的意图和要求,在适当的环境里 为人们所理解和接受。它与绘图有内在联系,但又不同于绘画,它以满足人们的实用和需求为目标,因而它比绘画更单纯,清晰和精确。页面设计属于设计的一种,同样要求简练,准确。

    从人记忆能力角度来说,由于人的大脑一次最多可记忆五到七条信息,因此如果希望人们在看完你的Web后能留下印象,最好也应该用一个简单的关键词语或图像吸引他们的注意力,如天极网的的“YESKY”.,醒目易记。

    保持简洁的常用做法是使用一个醒目的标题,这个标题常常采用图形来表示,但图形同样要求简洁。另一种保持简洁的做法是限制所用的字体和颜色的数目。一般每页使用的字体不超过三种,一个页面中使用的颜色少于256种。页面上所有的元素都应当有明确的含义和用途,不要试图用无关的图片把页面装点起来,初学者容易犯的一个错误是把页面搞的花里呼哨,却不能让别人明白他到底要突出表达的是什么内容,主题和意念。

    一致性

    一致性是表现一个丫点的独特风格的重要手段之一。

    要保持一致性,可以从页面的排版下手,各个页面使用相同的页边距,文本,图形之间保持相同的间距;主要图形,标题或符号旁边留下相同的空白;如果在第一页的顶部放置了公司标志,那么在其他各页面都放上这一标志;如果使用图标导航,则各个页面应当使用相同的图标。

    一致性还包括:页面中的每个元素与整个页面以及站点的色彩和风格上的一致性。所有的图标都应当彩相同的设计风格,比如全部采用图象的线条剪辑画或全部使用写实的照片等。

    另一个保持一致性的办法是字体和颜色的使用。文字的颜色要同图像的颜色保持一致并注意色彩搭配的和谐。一个站点通常只使用一到两种标准色,为了保持颜色上的一致性,标准色一致或相近。比如,站点的主题色彩如果为红色,可能就需要将链接的色彩也改为红色。

    对比度

    使用对比是强调突出某些内容的最有效的办法之一。好的对比度使内容更易于辨认和接受。实现对比的方法很多,最常用的是使用颜色的对比,比如,内容提要和正文使用不同颜色的字体,内容提要使用蓝色,而正文采用黑色;也可以使用大的标题,也即是面积上的对比;还可以使用图像现对比,题头的图像明确的向浏览者传达本页的主题,这里同样需要注意的是链接的色彩,在设计页面时我们常常会只注意到未被访问的链接的色彩,而容易忽视访问过的链接色彩将使得链接的文字难地辨认。

    还有一种实现对比的方法是使用学体变化。在文字排版中,可以使用斜体和黑体实出关键内容,但是注意不要滥用,否则就达不到应有的强调效果。

    使用对比的关键是强调突出关键内容,以吸引浏览者,鼓励他去发掘更深层次的内容。

    为了对3C原则上有直观的认识,可以到————等优秀的站点上看看,体会一下这些站点对简洁,一致性和对度等原则的把握。

    页面设计要点

    WebWebWeb上的内容包罗万象,版式丰富多彩,但无论怎样的变化,好的Web站点总是有许多共同之处,例如:

    精心组织的内容;

    格式美观的正文;

    和谐的色彩搭配;

    较好的对比度,使得文字具有较强的可读性;

    生动背景图案;

    页面元素大小适中,布局匀称;

    不同元素之间留有足够空白,给人视觉上休息的机会;

    各元素之间保持平衡;

    文字准确无误,无错别字、无拼写错误;

    总的来说评价一个页面设计的好坏基本上要考虑以下几个方面的因素。

    组织内容

    设计Web页面时,所发布的材料必须经过精心组织,比如说按逻辑、按时间顺序或按地理位置等等进行组织,而且这种内容组织应当是易于理解的。

    材料组织好后,下一步就是在Web页面上布置文本、图片等内容,目的是引导浏览者在页内浏览。我们应该控制页面上的元素的放置顺序和它们相互之间的空隙。比如,可以把与一段文字相关的图形放在段落旁边或嵌入段落中,但不要把与段落无关的图形放在段落边上,以免引起浏览者的误解。把相关的内容放在一起,而不相关的内容用空白,水平线或其他图形分隔开,最好是浏览者看完一页之后可以选择继续读下去或通过链接跳到其他合适的主题上去。

    由于人们阅读材料习惯于从左到右,从上到下进行,因此他们眼睛首先看到的是页面的左上角,然后逐渐往下看。根据这一习惯。我们在组织内容时可以把希望浏览者最先看到的内容放在页面的左上角和页面顶部,如公司的标记,最新消息以及其他一些重要内容等等;然后按重要性递减的顺序,由上而下放轩其他一些内容。重要的内容应当是浏览者最容易发现,而不是放在很深 的链接之后的,页面上的广告为了达到宣传效果,通常也放在页面顶部显著位置。在段落中不宜放入过多的链接,否则会引起浏览者浏览上的混乱,最好的办法是按逻辑关系选择放置,而不是随便乱放。如果可能的话,应该把链接放在一些相关的说明性文字旁边。比如,在一列放置文本,在另一列放置链接。这样就可以提示浏览者去使用这些链接。

    设计时可用的一些元素

    在确定Web站点的基本组织结构之后,就可以着手设计页面了。下面是设计时可供使用的一些元素:

    文本格式化:Web本身对文本和字体的格式化能力并不强,在Web页面中,可以指定文本尺寸、排列和其他的一些格式化属性(序号列表和无序号列表),但建议不要改变这体而应当使用缺省字体,以确保页面的平以无关必画面为浏览器是用本地机器上的字体显示示页面内容的,你指定的字体在浏览者那里并不一定能够找到,如果确实有必要少量使用某种特殊字体,可以把这些字画在图片上,然后将图片插入到页面中;

    按钮、图标和其他导航工具,帮助浏览者在Web内导航。

    背景:给页面添加背景,包括纹理填充、水印式背景和长条状背景等等,可以使得页面更加美观,给浏览者留下深刻的映象;

    图形:可加入图片、图表和图形等;

    表格:用来显示按行和列组织的信息,比如产品价格表,客户名单等;

    颜色:包括图片的色彩、文本和背景的色彩等;

    多媒体元素:包括声音、动画、视频片断、背说音乐等。

    页面布局:在页面上放置文本、图形等元素,在元素间添加横线条,空白等,并用表格、杠架进行排版。

    在后面的章节我们将陆续介绍这些元素的使用。

    选择文本和背景的色彩

    色彩可以使页面更加生动。首先,使用色彩可以产生强烈的视觉效果,使你的页面在浏览者心中留下很深的映象;色彩还可以传递设计者的思想情感。但是必注意慎重的使用色彩,否则很可能弄巧成拙。滥用色彩容易造成视觉上的混乱。一般情况下不要过多的使用效果太强烈的色彩,对于大面积的文字来说,白底黑字或黑底白字总是最佳选择。

    通常还应该选择相近的色彩。多数的页面背景为白色、黑色或灰色,其他一些次要的元素,如背景图片、线条适宜采用不抢眼的色彩。在数量有限的情况下,只有少量精心选择的元素为了突出强调的需要,才彩用明亮的色彩。在数量有奶的情况下,这引起彩色亮点会产生强烈的视觉冲击,但如果用得太多了,就会形成一种均匀的噪声,而达不到强调的效果。

    在选择背景和正文颜色时,最重要的一点是注意易读性。实现易读性的关键在于提供足够的明暗对比。由于黑白之间有最强烈的对比度,因此大多数网页都采用黑底折字显示文本,但是,也不必拘泥于黑白两色实现对比,可以选择一对颜色,其中一个是亮的,一个量暗的,只要它们保持足够的对比度,比如说,灰底黑字也是很好的选择。

    大面积的适宜采用低对比度。因此,对于大的形状或粗体字最好采用低对比度的色彩组合。

    除了亮度上的对比之外,还要考虑颜色上的对比。互补色具有最强的颜色对比两种有较强的色彩对比度的颜色组合在一起时,很难区分它们的边界。颜色对比同样可以产生强烈的视觉效果。运用强的色彩对比,可以制造紧张,激动等感觉。但是,在文本和它的背景之间不宜采用太强的颜色对比,否则文字看起来会显示得模糊。特别是,文本切忌放在使用文字的互补色的背景上。

    在选择颜色时,还要注意冷暖色的部题。冷色调(蓝、绿)会产生收缩感,而暖色调(红、橙、黄)则有向前突出的感觉。深蓝色和深绿色适合作为背景色,而明亮的黄色适合于那些希望引起注意的黄色。事实上,只要我们平时稍加观察,就会发现许多商店的招牌,广告或其他商业图形展示都彩用深蓝色背景加黄色文字,标记的组合。这种组合非常醒目,最适合商业领域使用。黑色和黄色也是另一种常用的颜色组合。

    在Web面面上,大多采用明亮的背景色衬以深颜色的文字这样的一种颜色组合。

    除了色彩的对比、冷暖感觉之外,还需要考虑色彩带给人心理上的感觉。比如,冷的颜色使人平静,而暖色使人激动;强的色彩对比造成紧张感;暗的颜色给人以沉重感和压迫感。亮的颜色给人轻松、开放的感觉。我们可以根据所要表达的主题,选择合适的色彩。

    色彩除了带给人心理上的感觉之外,有些颜色实际上已经有了社会意义。比如,红色代表停止,绿色代表通行,灰色和深蓝色代表保守,稳重等。恰当运用色彩可以调动浏览者心理上的感受。比如,在许多饮食店中,采用汪蓝色,给人轻松愉快的感觉,这同样也适合于网页,在网页中使用颜色时,就要尽量使得色彩搭配与这些习俗相吻合。

    考虑到大多数人使用256色显示模式,因此一个页面显示的颜色不宜过多,连页面内的图像在内应当控制在256色以内。主题颜色通常只需要两到三种,并采用一种标准色。

    以下是使用色彩的一些建议:

    对多数网页特别是有大面积文字的网页来说,应采用白色或浅色的背景,如浅灰色、淡黄色、浅蓝色或浅绿色,文字采用黑色或深颜色;

    避免在浅色背景使用明亮颜色的文字,因为这样文字会很难辨认;

    深颜色背景上使用浅色的文字是一种很好的组合,但是如果不是特别需要,应留作那些需要引起浏览者特别注意的小块区域和场合,比如标题图形等;

    使用黑色背景许多时候显得太沉重,可以考虑使用深灰色、深蓝、粟色等;

    白色、浅灰色、浅蓝色、浅绿色、浅褐色很适合作为深色背景上的文字颜色;

    大的、粗体的文字比常规尺寸的文字更适合使用;交强的颜色,可考虑鲜红色,橙色,明亮的蓝色,但注意不要滥用。

    展开全文
  • 讲解导航栏与图书页面的前端实现,熟悉 vue 的特性。

    前言

    之前讲过使用 Element 辅助前端页面的开发,但是只用到了比较少的内容,这一篇我们来做一下系统的核心页面——图书管理页面的前端部分,旨在熟悉 Vue 的更多特性。

    一、导航栏的实现

    我们的项目虽然本质上是单页面应用,但表面上有多个功能页面,比如首页、图书馆、笔记本等,后期根据情况还可以把一些功能集中起来做一个后台管理页面。为了方便用户在这三个页面之间切换,我们需要添加一个导航栏。

    这个导航栏的要求很简单:

    1. 能够在每个页面显示
    2. 美观

    1.路由配置

    为了实现第一个要求,我们需要把导航栏放在其它页面的父页面中(对 Vue 来说就是父组件),之前我们讲过,App.vue 是所有组件的父组件,但把导航栏放进去不合适,因为我们的登录页面中不应该显示导航栏。

    为了解决这个问题,我们在 components 目录下直接新建一个组件,命名为 Home.vue,原始代码如下:

    <template>
      <div>
        <router-view/>
      </div>
    </template>
    
    <script>
      export default {
        name: 'Home'
      }
    </script>
    
    <style scoped>
    
    </style>
    

    这里和 App.vue 一样,写入了一个 <router-view/>,也就是子页面(组件)显示的地方。

    接下来,来建立路由的父子关系。注意我们在一个组件中通过导入引用了其它组件,也可以称之为父子组件,但想要通过 <router-view/> 控制子组件的显示,则需要进行路由的相关配置。

    打开 router/index.js ,修改代码如下

    import Vue from 'vue'
    import Router from 'vue-router'
    import AppIndex from '../components/home/AppIndex'
    import Login from '../components/Login'
    import Home from '../components/Home'
    
    Vue.use(Router)
    
    export default new Router({
      mode: 'history',
      routes: [
        {
          path: '/home',
          name: 'Home',
          component: Home,
          // home页面并不需要被访问
          redirect: '/index',
          children: [
            {
              path: '/index',
              name: 'AppIndex',
              component: AppIndex,
              meta: {
                requireAuth: true
              }
            }
          ]
        },
        {
          path: '/login',
          name: 'Login',
          component: Login
        }
      ]
    })
    
    

    注意我们并没有把首页的访问路径设置为 /home/index,仍然可以通过 /index 访问首页,这样配置其实是感受不到 /home 这个路径的存在的。之后再添加新的页面,可以直接在 children 中增添对应的内容。

    2.使用 NavMenu 组件

    打开 Element 的文档,找到 NavMenu 组件相关内容:

    https://element.eleme.cn/2.0/#/zh-CN/component/menu

    主要有顶栏、侧栏两种导航样式,我们选择顶栏型,点击显示代码
    在这里插入图片描述
    这个顶栏其实有两个,上面的是没有底色的,下面的是有底色的。
    在这里插入图片描述
    这些代码基本涵盖了各种用法,我们可以选择自己需要的部分,并根据下面的文档对它进行改造。

    我们在 components 文件夹里新建一个 common 文件夹,用来存储公共的组件,并在该文件夹新建一个组件 NavMenu.vue,经过我修改的代码如下:

    <template>
        <el-menu
          :default-active="'/index'"
          router
          mode="horizontal"
          background-color="white"
          text-color="#222"
          active-text-color="red"
          style="min-width: 1300px">
          <el-menu-item v-for="(item,i) in navList" :key="i" :index="item.name">
            {{ item.navItem }}
          </el-menu-item>
          <a href="#nowhere" style="color: #222;float: right;padding: 20px;">更多功能</a>
          <i class="el-icon-menu" style="float:right;font-size: 45px;color: #222;padding-top: 8px"></i>
          <span style="position: absolute;padding-top: 20px;right: 43%;font-size: 20px;font-weight: bold">White Jotter - Your Mind Palace</span>
        </el-menu>
    </template>
    
    <script>
      export default {
        name: 'NavMenu',
        data () {
          return {
            navList: [
              {name: '/index', navItem: '首页'},
              {name: '/jotter', navItem: '笔记本'},
              {name: '/library', navItem: '图书馆'},
              {name: '/admin', navItem: '个人中心'}
            ]
          }
        }
      }
    </script>
    
    <style scoped>
      a{
        text-decoration: none;
      }
    
      span {
        pointer-events: none;
      }
    </style>
    
    

    这里需要解释两点。

    第一,在 <el-menu> 标签中我们开启了 router 模式,在 Element 文档中的解释如下:

    在这里插入图片描述
    第二,我们通过 v-for 指令,把 navList 数组渲染为一组 <el-menu-item> 元素,也即导航栏的内容。当然我们也可以分开写,这种用法只是显得 six 一些(当需要动态更改列表内容时就很有用了)

    另外为了美观我还加了点别的东西,都很基础,就不多说了。

    接下来,我们需要把这个组件放在 Home.vue 中。

    修改 Home.vue 的代码如下:

    <template>
      <div>
        <nav-menu></nav-menu>
        <router-view/>
      </div>
    </template>
    
    <script>
      import NavMenu from './common/NavMenu'
      export default {
        name: 'Home',
        components: {NavMenu}
      }
    </script>
    
    <style scoped>
    
    </style>
    
    

    这样,我们访问 http://localhost:8080/index ,就会在顶部出现导航栏。这时我们还没有别的页面可以访问,所以点击按钮就跳到了空白的页面。
    在这里插入图片描述
    嗯,首页也啥也没有。这个页面我不打算多说什么,大家可以把它作为一个纯粹的展示页面,练习一下 html、css 之类。我做的首页源码可以在 GitHub 上下载下来参考使用,大致是这样的。
    在这里插入图片描述

    二、图书管理页面

    这是我们的核心页面,我们先把它设计出来,以后再去实现具体的功能。

    我拍脑袋想了一下,页面大概需要以下内容:

    1. 图书展示区域
    2. 分类导航栏
    3. 搜索栏
    4. 页码

    1.LibraryIndex.vue

    components 中新建文件夹 library,新建组件 LibraryIndex.vue,作为图书页面的根组件,代码如下

    <template>
      <el-container>
        <el-aside style="width: 200px;margin-top: 20px">
          <switch></switch>
          <!--<SideMenu></SideMenu>-->
        </el-aside>
        <el-main>
          <!--<books></books>-->
        </el-main>
      </el-container>
    </template>
    
    <script>
    
      export default {
        name: 'AppLibrary'
      }
    </script>
    
    <style scoped>
    
    </style>
    
    

    注释掉的部分是接下来需要编写的组件。这里我们使用了 Element 提供的 Container 布局容器,把整个页面分为了侧边栏和主要区域两个部分,详细了解请参考

    https://element.eleme.cn/2.0/#/zh-CN/component/container

    接下来我们配置这个页面的路由,修改 router/index.js 代码如下:

    import Vue from 'vue'
    import Router from 'vue-router'
    import AppIndex from '../components/home/AppIndex'
    import Login from '../components/Login'
    import Home from '../components/Home'
    import LibraryIndex from '../components/library/LibraryIndex'
    
    Vue.use(Router)
    
    export default new Router({
      mode: 'history',
      routes: [
        {
          path: '/home',
          name: 'Home',
          component: Home,
          redirect: '/index',
          children: [
            {
              path: '/index',
              name: 'AppIndex',
              component: AppIndex,
              meta: {
                requireAuth: true
              }
            },
            {
              path: '/library',
              name: 'Library',
              component: LibraryIndex,
              meta: {
                requireAuth: true
              }
            }
          ]
        },
        {
          path: '/login',
          name: 'Login',
          component: Login
        }
      ]
    })
    
    

    P.S 关于 router 的配置已经写了许多次了,接下来为了节省篇幅,我就只贴出来主要修改的部分啦

    访问 http://localhost:8080/library ,发现可以访问了,当然,页面还是空白的,但是出现了导航栏,可以测试一下在首页和图书馆页面之间切换。
    在这里插入图片描述

    2.SideMenu.vue

    编写一个侧边栏组件。放在 /library 文件夹中,代码如下

    <template>
      <el-menu
        class="categories"
        default-active="0"
        @select="handleSelect"
        active-text-color="red">
        <el-menu-item index="0">
          <i class="el-icon-menu"></i>
          <span slot="title">全部</span>
        </el-menu-item>
        <el-menu-item index="1">
          <i class="el-icon-menu"></i>
          <span slot="title">文学</span>
        </el-menu-item>
        <el-menu-item index="2">
          <i class="el-icon-menu"></i>
          <span slot="title">流行</span>
        </el-menu-item>
        <el-menu-item index="3">
          <i class="el-icon-menu"></i>
          <span slot="title">文化</span>
        </el-menu-item>
        <el-menu-item index="4">
          <i class="el-icon-menu"></i>
          <span slot="title">生活</span>
        </el-menu-item>
        <el-menu-item index="5">
          <i class="el-icon-menu"></i>
          <span slot="title">经管</span>
        </el-menu-item>
        <el-menu-item index="6">
          <i class="el-icon-menu"></i>
          <span slot="title">科技</span>
        </el-menu-item>
      </el-menu>
    </template>
    
    <script>
      export default {
        name: 'SideMenu'
      }
    </script>
    
    <style scoped>
      .categories {
        position: fixed;
        margin-left: 50%;
        left: -600px;
        top: 100px;
        width: 150px;
      }
    </style>
    
    

    LibraryIndex.vue 中使用这个组件

    <template>
      <el-container>
        <el-aside style="width: 200px;margin-top: 20px">
          <switch></switch>
          <SideMenu></SideMenu>
        </el-aside>
        <el-main>
          <!--<books></books>-->
        </el-main>
      </el-container>
    </template>
    
    <script>
      import SideMenu from './SideMenu'
      export default {
        name: 'AppLibrary',
        components: {SideMenu}
      }
    </script>
    
    <style scoped>
    
    </style>
    
    

    访问 http://localhost:8080/library 查看效果
    在这里插入图片描述

    3.Books.vue

    最后,我们用一个组件来显示图书。这个组件比较复杂,初始代码如下

    <template>
      <div>
        <el-row style="height: 840px;">
          <!--<search-bar></search-bar>-->
          <el-tooltip effect="dark" placement="right"
                      v-for="item in books"
                      :key="item.id">
            <p slot="content" style="font-size: 14px;margin-bottom: 6px;">{{item.title}}</p>
            <p slot="content" style="font-size: 13px;margin-bottom: 6px">
              <span>{{item.author}}</span> /
              <span>{{item.date}}</span> /
              <span>{{item.press}}</span>
            </p>
            <p slot="content" style="width: 300px" class="abstract">{{item.abs}}</p>
            <el-card style="width: 135px;margin-bottom: 20px;height: 233px;float: left;margin-right: 15px" class="book"
                     bodyStyle="padding:10px" shadow="hover">
              <div class="cover">
                <img :src="item.cover" alt="封面">
              </div>
              <div class="info">
                <div class="title">
                  <a href="">{{item.title}}</a>
                </div>
              </div>
              <div class="author">{{item.author}}</div>
            </el-card>
          </el-tooltip>
        </el-row>
        <el-row>
          <el-pagination
            :current-page="1"
            :page-size="10"
            :total="20">
          </el-pagination>
        </el-row>
      </div>
    </template>
    
    <script>
      export default {
        name: 'Books',
        data () {
          return {
            books: [
              {
                cover: 'https://i.loli.net/2019/04/10/5cada7e73d601.jpg',
                title: '三体',
                author: '刘慈欣',
                date: '2019-05-05',
                press: '重庆出版社',
                abs: '文化大革命如火如荼进行的同时。军方探寻外星文明的绝秘计划“红岸工程”取得了突破性进展。但在按下发射键的那一刻,历经劫难的叶文洁没有意识到,她彻底改变了人类的命运。地球文明向宇宙发出的第一声啼鸣,以太阳为中心,以光速向宇宙深处飞驰……'
              }
            ]
          }
        }
      }
    </script>
    
    <style scoped>
      .cover {
        width: 115px;
        height: 172px;
        margin-bottom: 7px;
        overflow: hidden;
        cursor: pointer;
      }
    
      img {
        width: 115px;
        height: 172px;
        /*margin: 0 auto;*/
      }
    
      .title {
        font-size: 14px;
        text-align: left;
      }
    
      .author {
        color: #333;
        width: 102px;
        font-size: 13px;
        margin-bottom: 6px;
        text-align: left;
      }
    
      .abstract {
        display: block;
        line-height: 17px;
      }
    
      a {
        text-decoration: none;
      }
    
      a:link, a:visited, a:focus {
        color: #3377aa;
      }
    </style>
    
    

    之后我们要实现的许多功能都与这个组件有关。目前用到的这部分,需要注意的有:

    1. v-for 指令,之后可以使用动态渲染,这里我们用《三体》的内容作为一个默认值,先查看效果。
    2. el-tooltip Element 提供的组件,用于展示鼠标悬停时的提示信息。参考 https://element.eleme.cn/2.0/#/zh-CN/component/tooltip
    3. slot 插槽,及把标签中的内容插到父组件指定的地方,这里我们插入了 el-tooltipcontent 中。上述文档中亦有描述。
    4. 封面图像标签中,我们使用了 :src="item.cover" 这种写法,: 其实是 v-bind: 的缩写,用于绑定把标签的属性与 data 中的值绑定起来。
    5. 搜索栏暂不理会
    6. 分页使用 el-pagination 组件,目前只是样式。

    图书卡片的样式是模仿豆瓣读书做的。
    在这里插入图片描述

    最后把 Books 组件放在 LibraryIndex.vue 中,并稍微修改一下样式

    <template>
      <el-container>
        <el-aside style="width: 200px;margin-top: 20px">
          <switch></switch>
          <SideMenu></SideMenu>
        </el-aside>
        <el-main>
          <books class="books-area"></books>
        </el-main>
      </el-container>
    </template>
    
    <script>
      import SideMenu from './SideMenu'
      import Books from './Books'
      export default {
        name: 'AppLibrary',
        components: {SideMenu, Books}
      }
    </script>
    
    <style scoped>
      .books-area {
        width: 990px;
        margin-left: auto;
        margin-right: auto;
      }
    </style>
    
    

    P.S 以后添加组件之类的代码我也尽量只放关键部分,大家要多尝试自己调试。

    最后,访问 http://localhost:8080/library ,效果如下
    在这里插入图片描述
    功能完善之后是这个样子的
    在这里插入图片描述


    项目的源码在我的 GitHub 上,可以下载下来参考:

    https://github.com/Antabot/White-Jotter

    感谢大家的支持!如果有想不清楚的问题,请给我发个邮件,我一定及时回复!

    查看系列文章目录:
    https://learner.blog.csdn.net/article/details/88925013

    上一篇: Vue + Spring Boot 项目实战(六):前端路由与登录拦截器

    下一篇:Vue + Spring Boot 项目实战(八):数据库设计与增删改查

    展开全文
  • 二级页面设计

    千次阅读 2019-04-27 11:08:26
    二级页面设计 使用工具(Adobephotosh)简称(ps) (作者 罗天绪 撰写时间4月23日) 我们做的这个二级页面是一个注册的页面,首页打开ps创建一个模板然后用矩形工具,拉出个矩形来然后填上颜色和描边色,描边色为黑色...

    二级页面设计
    使用工具(Adobephotosh)简称(ps)
    (作者 罗天绪 撰写时间4月23日)
    我们做的这个二级页面是一个注册的页面,首页打开ps创建一个模板然后用矩形工具,拉出个矩形来然后填上颜色和描边色,描边色为黑色填上颜色后也可以调下大小,再他的旁边哪里就可以调。
    在这里插入图片描述

    然后在图层的右上角上放个(logo),在logo旁边打上文字。
    在这里插入图片描述

    然后在矩形里面打上一些关于注册的文字,电话号码,用户名字,注册昵称,输入密码之类的那些东西就可以了,然后我们再用矩形工具把矩形出来然后(ctrl+j)复制一下,然后再(ctrl+t)把他拖到文字哪里。
    在这里插入图片描述

    然后再用矩形工具,拉个矩形出来填上颜色不用填上描边色,填上颜色后给他打上文字第二个也是一样的方法,最后就做出来了。
    最后做出来的样子。
    在这里插入图片描述

    展开全文
  • 诚然,能点到“联系我们”页面的多为有需求或有合作意向的用户,那么“联系我们”页面设计就要做到简洁、方便。下面小编就带领大家围观一下设计类网站的页面设计,来看看他们的“联系我们”页面设计,希望能为大家...

    诚然,能点到“联系我们”页面的多为有需求或有合作意向的用户,那么“联系我们”页面设计就要做到简洁、方便。下面小编就带领大家围观一下设计类网站的页面设计,来看看他们的“联系我们”页面设计,希望能为大家提供一些思路或者灵感。

    1、设计达人


    ALT:设计达人的“关于我们”页面原型

    原型预览链接:http://run.mockplus.com/mIXHzPUF8SKcTJSE/index.html

    设计达人的“关于我们”页面,包含三小段关于设计达人的团队介绍。联系我们页面顶部有各种常用的分析按钮和加关注按钮。右侧是详细的分类目录、页面、推荐书籍、推荐文章和一些设计交流群,方便大家沟通。

    联系我们简单干净,有Email和QQ两种方式。用户点击"QQ交谈”就可以及时、方便、快速地在线联系对方,这是我比较喜欢的地方,不会出现留了各种个人信息仍无任何回复或者回复周期太长的情况。不过,可以把Email和QQ的联系方式换成字体(原为图片样式),这样方便用户复制,避免发送至错误邮箱或添加错误的QQ。

    2、简书


    ALT:简书的“联系我们”页面原型

    原型预览链接:https://run.mockplus.cn/3FEG10cQiTm1VdQ5/index.html

    简书的“联系我们”页面设计相当简洁,但内容并不简单,同时也利用大量留白增加了内容的重要性。简书分开展示了不同业务负责人的联系方式,让用户一目了然,可以直接找到对应的联系人信息。

    简书的“联系我们”分类很详细,分开展示的业务有:广告投放合作、市场推广/品牌合作、技术类合作、赞赏/提现业务咨询、人事沟通、封号和锁文章咨询、其他事物。

    同样,简书也在“联系我们”页面设计中加入了“关于我们”的介绍,有简单的3小段的介绍。

    3、花瓣


    ALT:花瓣的“联系我们”页面原型设计

    原型预览链接:https://run.mockplus.cn/ruRZ5uja1Jk4lIGd/index.html

    花瓣的“联系我们”页面设计也比较简洁,分开展示了:商务及流量合作、品牌广告投放、其他网内一般事物、联系客服四种联系方式。

    亮点是,提供了公司地址和增值电信业务经营许可证,能增强企业的真实感和权威性,在线客服支持也方便紧急事务的联系。

    4、UI中国


    ALT:UI中国的“联系我们”页面原型设计

    原型预览链接:https://run.mockplus.cn/12gB7T3ijUMEpTQd/index.html

    UI中国“联系我们”页面上方是大段大段文字,分别是“关于我们”、“版权声明”、“隐私保护”。联系方式分3类,“网站问题&举报投诉&建议意见”,“商务合作”,“招聘信息刊登”,联系方式有QQ群和Email。

    亮点是右下角有置顶按钮、在线QQ客服、反馈按钮,底部导航附有二维码,可惜反馈按钮和二维码有重合,如下图。


    5、产品壹佰


    ALT:UI中国的“联系我们”页面原型

    原型预览链接:https://run.mockplus.cn/eq8DR74t0KrxLYH6/index.html

    产品壹佰的“联系我们”页面设计使用了栅格布局,来组织页面的信息和需要展示的内容。分别展示了:申请讲师、加入我们、客户服务、媒体与商务接待、教学与产品交流、开课吧。

    6、站酷


    原型预览链接:https://run.mockplus.cn/Qo1JhLBnzHhtaeN8/index.html

    站酷的“联系我们”页面设计简单干净,利用线条划分页面板块和布局。联系页面提供了用户服务和企业服务的联系邮箱,联系方式相对单一,没有提供可以在线的及时沟通的联系方式。

    7、Ui制造者


    ALT:Ui制造者的“联系我们”页面原型设计

    Ui制造者的“联系我们”页面原型预览链接:https://run.mockplus.cn/wtNkJGSAjy6SZjNl/index.html

    Ui制造者的“联系我们”页面设计也是以简洁为主,提供的联系方式有三种,网址居然也算一种联系方式。在联系我们页面,但左侧菜单栏却显示帮助中心,此处为bug,而且友情链接打开是空白页。

    小结

    综上国内设计类网站的“联系我们”页面设计,可供参考的有如下特点:

    1、整体以简洁为主,使用大量留白强化页面的空间感和结构感;

    2、提供多种联系渠道,可以让访客快迅地联系我们,将顾客对我们的兴趣转化为实际沟通的行为。

    3、提供不同业务的联系方式,分开展示让访客一目了然,直接找到相应的联系方式进行沟通。

    成功的联系我们页面设计,有利于提高访客的转化率,促进产品和服务的销售,更好的服务于网站,服务于公司。

    联系我们页面设计,就是要让目的简单、明确的客户,方便快速的找到自己需要的联系方式,切勿设计的太过花哨。如果觉得本篇文章对你有帮助,欢迎分享给你认为用得上它的朋友。

    相关文章推荐:

    2018网页UI设计:轻松搞定视觉层次感

    关于用户体验你应该知道的8件事

    APP可访问性设计:拒绝体验“障碍”

    展开全文
  • html5报名页面设计

    千次阅读 2016-09-09 09:17:48
    html5报名页面设计
  • 购物商城后台页面设计

    千次阅读 2016-04-24 18:10:29
    网站后台页面设计
  • 古诗欣赏页面设计

    千次阅读 2017-10-17 20:54:41
    从课本学的唐诗欣赏页面设计 文字网页 唐诗欣赏 静夜思 李白 床前明月光,疑似地上霜。 举头望明月,低头思故乡。 【简析】这是写远客思乡之情的诗,诗以明白如话的语言雕琢出...
  • 有这样一个页面页面中包含了很多个模块,假设是5个模块,分别是tableview中的5个cell,但是5个模块中的数据是分别5个接口获取数据的,你会怎么设计这个简单的页面框架呢!![图片说明]...
  • HTML静态页面设计

    万次阅读 多人点赞 2019-05-17 22:42:23
    1.编写一个自我介绍的HTML页面,要求使用HTML文档常用的文本、超链接、图片、表格、行级、块级等标签,页面要求布局合理,内容图文并茂,将源文件和素材保存在exp01\1\文件夹下。 <!DOCTYPE ...
  • 简单地人物介绍页面设计

    千次阅读 2019-07-01 09:34:33
    简单地人物介绍页面设计 这是我的第一次练习,做的一个关于“杂交水稻之父”袁隆平的简介。简单地用了html和css.以下是两个特点: 1.页面主要有图片和文本组成。 2.文章下方用了链接,你可以了解关于袁隆平的事迹。 ...
  • 微信HTML5页面设计建议

    千次阅读 2015-08-03 23:58:42
    一个HTML5页面从提出到完成上线的流程:   1、需求方、设计人员、H5实现人员三方共同讨论实现方案 2、设计人员出设计图 ...如何提出一个合理的微信HTML5页面设计诉求?   合理分析诉求与
  • 博客系统前台页面设计

    千次阅读 2011-11-12 21:09:36
     博客前台页面设计 分工:  美工设计与前台代码 开发软件:  Photoshop cs5 Dreamweaver cs5 开发周期:5+3+8=16小时 兼容性调试: 通过IE8,Sougo,chrome,firefox 使用说明:  压缩包中附有设计原始文件与...
  • WID网页页面设计

    千次阅读 2010-09-13 22:21:00
    针对用户需求,需要针对特定类型的网站进行网页页面设计,网页页面设计有几条要素准则,其一是方便性,便于用户操作;其二是趣味性创新性,能够让用户感觉到有趣。 其中有几个页面设计的术语需要了解:1.UI(user ...
  • Android页面设计(一)——简洁美观的登录页面

    万次阅读 多人点赞 2019-07-06 00:18:15
    前几天做个APP,需要用到登录页面,无奈本人艺术细胞太差,于是去GitHub逛了一圈,没有找到特别满意的,于是只能自己设计了一个,将就着用一下,后续会继续扩充。大家有比较好的设计方案欢迎评论区分享! 废话不多说...
  • 页面设计怎么用呢,比如就是简单的加空格,换行,我只会用br/和 ,可是我看一些大公司的登陆源代码,没那么多这些东西啊!这是怎么回事呢? 说详细点,本人还只是一个大二学生,刚接触这东西。万分感谢,好人有...
  • Android登录页面设计

    千次阅读 2018-09-01 11:23:43
    说到开发app,肯定要设计页面布局是吧,我也是个审美不好的人,对于开发app也只能写好功能,页面美观做不好。 今天呢,给大家奉上一篇android登录页面,当然这个页面也是我写的,不过可能并不美观,只是帮大家理解...
  • 管理员页面设计案例:admin_list.html

    万次阅读 2018-07-25 10:48:20
    二、页面设计 1、给页面所有元素设置统一样式 /* 0.给所有元素统一设置一些样式: 将所有元素的默认边距归零,防止影响后期的布局 */ * { padding: 0; margin: 0; } 2、框架设计div 代码如下: /* 1.给...
  • 针对登陆页面设计30个以上的testcase.

    千次阅读 2019-06-20 23:15:45
    请针对这个页面设计30个以上的testcase.)  此题的考察目的:面试者是否熟悉各种测试方法,是否有丰富的Web测试经验, 是否了解Web开发,以及设计Test case的能力  这个题目还是相当有难度的, 一般的人很难把这...
  • android-左右滑动页面设计-仿微信滑动引导页面

    千次下载 热门讨论 2012-05-02 21:00:54
    SlidePageView组件实现的仿微信上次使用时引导页面demo, 还有SlidePageView实现的自定义的等宽和不等宽显示单元页面的demo 详情可以看我的博客http://blog.csdn.net/swadair/article/details/7529159
  • 今天学习了登录和注册页面的设计... 总体设计思路:整个页面设计可以分为主体(content)、头部(content-header)、内容(content-body)三个部分组成,其中是主体是根部,包含了头部和内容,头部和内容各自下设两...
  • 42个激发灵感、漂亮的登陆页面设计

    千次阅读 2012-03-10 17:20:18
    以下展示了许多设计精美且构思严谨的登陆页面设计。这些华丽的设计能带给你奇思妙想,并能使你为自己网站设计出非常吸引眼球的登陆页面。 这就是42个启发灵感的漂亮登陆页面设计,或许能给你的下个设计项目带来...
  • 苹果官网首页页面设计

    千次阅读 多人点赞 2019-09-05 17:27:42
    苹果官网这个首页,...大页面 中等页面页面 这里我只截取了一部分。它整个页面都会根据窗口大小来变化。 实现代码 页面 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /&g...
  • PyQt5搭建图书馆管理系统(2)——注册页面设计

    千次阅读 热门讨论 2018-04-20 10:38:28
    PyQt5搭建图书馆管理系统(2)——注册页面设计 PyQt5搭建图书馆管理系统(2)——注册页面设计 代码: 实现效果 最后附上链接 我觉得最cd的就是QtDesigner虽然适合快速开发UI,但是我总用不好,只能纯...
  • 五、HTML-表单页面设计之陕西理工大学教务系统 目标页面 代码展示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>表单页面2表格实现</title> </head>...
  • PyQt5搭建图书馆管理系统(3)——登录页面设计 PyQt5搭建图书馆管理系统(3)——登录页面设计 分析 代码: 效果如下 最后附上链接 分析 登录页面的逻辑很简单,如下: - 用户输入学号和密码(安全...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 87,731
精华内容 35,092
关键字:

页面设计