当前位置: 首页 > news >正文

《CSS 简易速速上手小册》第4章:视觉美学(2024 最新版)

在这里插入图片描述

文章目录

  • 4.1 颜色理论在 CSS 设计中的应用:网页的调色盘
    • 4.1.1 基础知识
    • 4.1.2 重点案例:创建一个具有情感设计的登录页面
    • 4.1.3 拓展案例 1:使用颜色增强信息的可视化表示
    • 4.1.4 拓展案例 2:利用颜色创建网站的品牌身份
  • 4.2 字体与文本样式:网页的声音
    • 4.2.1 基础知识
    • 4.2.2 重点案例:创造一个具有良好可读性的博客文章页面
    • 4.2.3 拓展案例 1:使用 Web 字体增强品牌形象
    • 4.2.4 拓展案例 2:创建动态文本效果以吸引注意力
  • 4.3 使用图标和 SVG:网页的表情包
    • 4.3.1 基础知识
    • 4.3.2 重点案例:为导航菜单添加图标
    • 4.3.3 拓展案例 1:使用 SVG 制作响应式图表
    • 4.3.4 拓展案例 2:为按钮添加交互动画

4.1 颜色理论在 CSS 设计中的应用:网页的调色盘

在网页设计的世界里,颜色不仅仅填充空间,它们传达情感,引导视觉流动,甚至影响用户的行为。掌握颜色理论在CSS设计中的应用,就像是拿到了一盒神奇的调色盘,让你能够为你的网站绘制出完美的背景。

4.1.1 基础知识

  • 颜色模型:在CSS中,我们常用RGB(红、绿、蓝)、HEX(十六进制颜色码)、HSL(色相、饱和度、亮度)等方式来表示颜色。
  • 颜色和情感:不同的颜色能够激发不同的情感。例如,蓝色通常与可靠和专业相关联,而黄色则传达乐观和幸福。
  • 对比和协调:使用对比色(色轮上相对的颜色)可以创建动态和吸引注意的设计;使用类似色(色轮上相邻的颜色)则可以创造和谐和统一的视觉效果。

4.1.2 重点案例:创建一个具有情感设计的登录页面

假设你要为一个健康和福祉应用设计登录页面,你希望这个页面能够传达一种安静和放松的感觉。

  • CSS 样式
body {background-color: #f0f6f7; /* 淡蓝色背景给人一种清新安静的感觉 */color: #333; /* 深色文字提供良好的对比和可读性 */
}.button {background-color: #4CAF50; /* 绿色按钮表示前进和积极的行动 */color: white;
}.link {color: #007BFF; /* 蓝色链接代表可信赖和安全 */
}

这个案例展示了如何通过颜色的选择和搭配来传达特定的情感和信息。

4.1.3 拓展案例 1:使用颜色增强信息的可视化表示

假设你正在设计一个数据仪表板,需要通过颜色来区分不同类型的信息。

  • CSS 样式
.positive {color: #4CAF50; /* 绿色表示正面的数据或增长 */
}.negative {color: #F44336; /* 红色用于警告或表示下降的趋势 */
}.neutral {color: #FFEB3B; /* 黄色用于中性数据或需要注意的信息 */
}

通过颜色的应用,用户可以快速识别数据的性质和重要性。

4.1.4 拓展案例 2:利用颜色创建网站的品牌身份

为一个初创公司设计网站时,你希望通过颜色来建立品牌的视觉身份。

  • CSS 样式
:root {--brand-color: #009688; /* 选择一个独特的品牌颜色 */--accent-color: #FFC107; /* 辅助颜色用来吸引注意或突出显示 */
}.header {background-color: var(--brand-color);color: white;
}.highlight {color: var(--accent-color);
}

通过定义和使用CSS变量,我们可以在整个网站中一致地使用品牌颜色,增强品牌识别。

掌握颜色理论在CSS设计中的应用,就像是给你的网站穿上了一件定制的晚礼服。每种颜色的选择和搭配都应该有意图和目的,让用户在浏览你的网站时,不仅仅是获取信息,更是享受一场视觉和情感上的盛宴。记住,颜色不只是填充空间的工具,它们是讲述你网站故事的调色盘。

在这里插入图片描述


4.2 字体与文本样式:网页的声音

在网页设计的交响乐中,字体和文本样式是那些能够直接触及用户心灵的旋律。它们不仅仅是传递信息的工具,更是表达情感、塑造品牌个性和提升可读性的关键元素。正确地选择和使用它们,可以让你的网站“说话”的声音更加悦耳动听。

4.2.1 基础知识

  • 字体家族(Font Family):字体家族是一组具有相似设计特征的字体集合。在CSS中,通过 font-family 属性指定。
  • 字体大小(Font Size):字体大小决定了文本的可读性。使用 font-size 属性来设置。
  • 字体粗细(Font Weight):字体粗细影响文本的视觉重量。font-weight 属性用于控制。
  • 行高(Line Height):行高影响文本的排版密度和可读性。通过 line-height 属性调整。
  • 文本对齐(Text Align):文本对齐方式影响布局的整洁度和阅读流畅度。text-align 属性可用于设置对齐方式。

4.2.2 重点案例:创造一个具有良好可读性的博客文章页面

假设你需要设计一个博客文章页面,你希望它不仅内容丰富,而且易于阅读,能让读者沉浸其中。

  • CSS 样式
body {font-family: 'Open Sans', Arial, sans-serif; /* 选择易读的字体 */font-size: 18px; /* 设定一个舒适的阅读大小 */line-height: 1.6; /* 增加行高以改善阅读体验 */
}h1, h2, h3 {font-family: 'Merriweather', serif; /* 对标题使用更具特色的字体 */
}p {text-align: justify; /* 两端对齐段落文本 */
}

通过混合使用两种字体和调整文本排版的参数,我们可以创造一个既具有个性又易于阅读的博客文章页面。

4.2.3 拓展案例 1:使用 Web 字体增强品牌形象

假设你正在为一个品牌网站工作,想要通过使用特定的Web字体来强化品牌形象。

  • HTML 标签
<link href="https://fonts.googleapis.com/css?family=Roboto:400,700&display=swap" rel="stylesheet">
  • CSS 样式
body {font-family: 'Roboto', sans-serif; /* 应用Web字体 */font-weight: 400; /* 正文使用正常字重 */
}strong {font-weight: 700; /* 强调文字使用更粗的字重 */
}

通过从Google Fonts引入并使用 Roboto 字体,我们不仅提升了网站的视觉效果,也增强了品牌的独特性。

4.2.4 拓展案例 2:创建动态文本效果以吸引注意力

为了在一个宣传页面上吸引用户的注意力,你决定使用CSS动画来增加文本的动态效果。

  • CSS 样式
@keyframes fadeIn {from { opacity: 0; }to { opacity: 1; }
}.highlight {animation: fadeIn 2s ease-in-out; /* 文本淡入效果 */color: #FF5722; /* 使用鲜艳的颜色以吸引注意力 */font-weight: bold; /* 加粗文本以突出显示 */
}

通过简单的 CSS 动画和鲜明的颜色选择,我们可以让特定文本区域成为用户关注的焦点。

通过这些案例,我们可以看到,字体和文本样式在网页设计中扮演着至关重要的角色。它们不仅能够提升网站的整体美感,还能够在传递信息的同时,增强用户的阅读体验。记住,每个字体选择、每个样式调整,都应该服务于你想要讲述的故事和你想要传达的情感。继续实验和探索,让你的网站的“声音”更加悦耳。

在这里插入图片描述


4.3 使用图标和 SVG:网页的表情包

在数字沟通的时代,图标和SVG就像是网页的表情包,能够在不说一句话的情况下传达许多信息。正确使用这些视觉元素不仅能够丰富用户的互动体验,还能有效地引导用户注意力和行为。让我们深入了解如何在你的网页设计中巧妙地应用它们。

4.3.1 基础知识

  • 图标(Icons):图标是简洁的图形,用于表示一个动作、对象或概念。在网页设计中,图标可以帮助用户快速识别功能区域或导航元素。
  • SVG(Scalable Vector Graphics):SVG是一种基于XML的图像格式,用于描述二维矢量图形。SVG图像可以在任何尺寸下无损放大,非常适合网页设计中的图标、图表和其他图形。
  • 优势:与传统的像素图像(如PNG或JPEG)相比,SVG文件通常更小,且可以通过CSS和JavaScript进行样式化和动画处理。

4.3.2 重点案例:为导航菜单添加图标

假设你正在设计一个网站的导航菜单,希望通过添加图标来提高用户的识别速度和互动性。

  • HTML 结构
<nav><ul><li><a href="#"><img src="home-icon.svg" alt="Home">首页</a></li><li><a href="#"><img src="services-icon.svg" alt="Services">服务</a></li><li><a href="#"><img src="contact-icon.svg" alt="Contact">联系我们</a></li></ul>
</nav>

在这个案例中,我们为每个导航项添加了一个SVG图标,使得菜单项更加直观和吸引人。

4.3.3 拓展案例 1:使用 SVG 制作响应式图表

如果你需要在网站上展示一些数据图表,SVG可以帮助你创建可缩放且响应式的解决方案。

  • HTML 结构
<svg width="100%" height="200" viewBox="0 0 100 50"><circle cx="25" cy="25" r="20" fill="blue" /><circle cx="75" cy="25" r="20" fill="red" />
</svg>

这个简单的示例展示了如何使用SVG来创建一个响应式的图表,其中包含两个圆形代表不同的数据点。

4.3.4 拓展案例 2:为按钮添加交互动画

通过给SVG图标添加CSS动画,你可以为网站的按钮或其他元素增加有趣的交互效果。

  • HTML 结构
<button><svg width="20" height="20" viewBox="0 0 20 20"><path d="M0,5 20,5" stroke="#000" stroke-width="2"/><path d="M0,10 20,10" stroke="#000" stroke-width="2"/><path d="M0,15 20,15" stroke="#000" stroke-width="2"/></svg>菜单
</button>
  • CSS 样式
button:hover svg path {stroke: #FF5722;transition: stroke 0.3s ease-in-out;
}

当用户鼠标悬停在按钮上时,SVG图标的颜色会改变,为用户操作提供直观的反馈。

通过这些案例,我们可以看到图标和SVG在网页设计中的强大作用。它们不仅能够提升网站的视觉效果,还能够通过丰富的交互设计来增强用户体验。掌握了这些技巧,你就可以将你的网站变成一个充满活力和信息的视觉盛宴。继续探索和实验吧,让你的网站在视觉和交互上都能够给用户留下深刻印象。

相关文章:

《CSS 简易速速上手小册》第4章:视觉美学(2024 最新版)

文章目录 4.1 颜色理论在 CSS 设计中的应用&#xff1a;网页的调色盘4.1.1 基础知识4.1.2 重点案例&#xff1a;创建一个具有情感设计的登录页面4.1.3 拓展案例 1&#xff1a;使用颜色增强信息的可视化表示4.1.4 拓展案例 2&#xff1a;利用颜色创建网站的品牌身份 4.2 字体与文…...

设计模式浅析

一、设计模式的使用场景 设计模式&#xff08;Design Patterns&#xff09;是在软件开发中经过验证的最佳实践&#xff0c;用于解决常见的设计问题。它们提供了一种可复用的解决方案&#xff0c;可以帮助开发人员提高代码质量、可维护性和可重用性。设计模式的采用通常在以下情…...

Linux环境中的git

目录 1.要使用git&#xff0c;首先要安装git 2.首次使用git需要做的操作 3.git操作 1.要使用git&#xff0c;首先要安装git 指令&#xff1a;sudo yum install -y git 2.首次使用git需要做的操作 在gitee网页&#xff0c;在你的仓库中找到&#xff1a; 先将下面两行代码分别…...

单测的思路

文章目录 单测的定义方法的单测几种生成工具的对比生成步骤 接口的单测场景的单测总结参考 单测的定义 单元测试&#xff08;Unit Testing&#xff09;是一种软件开发中的测试方法&#xff0c;它的主要目的是确保软件中的最小可测试单元&#xff08;通常是函数、方法或类&…...

Linux内核与驱动面试经典“小”问题集锦(6)

接前一篇文章&#xff1a;Linux内核与驱动面试经典“小”问题集锦&#xff08;5&#xff09; 问题8 问&#xff1a;如何判断一个数是否是2的幂次&#xff08;假设最多32位&#xff09;&#xff1f; 备注&#xff1a;此问题是笔者年前参加小米面试时遇到的一个问题&#xff0c…...

【zabbix】(四)-钉钉告警企业微信配置

前提条件&#xff1a; 已经安装了Python3环境&#xff08;脚本需要requests模块&#xff09;。Centos7.x自带Python2&#xff08;不含requests模块&#xff09; 钉钉告警配置 一 安装Python3 参考该优秀文档部署 查看Python的模块&#xff1a;pip list / pip3 list 报错 …...

python-自动化篇-办公-一键将word中的表格提取到excel文件中

文章目录 代码 工作中&#xff0c;经常需要将Word文档中的表格粘贴到Excel文件中&#xff0c;以便汇总及分析。一个一个复制粘贴&#xff0c;非常不方便&#xff0c;还是Python自动化操作&#xff0c;省心省力。要求如下图所示&#xff0c;即将word中的所有表格&#xff0c;转存…...

C#,数值计算,矩阵的行列式(Determinant)、伴随矩阵(Adjoint)与逆矩阵(Inverse)的算法与源代码

本文发布矩阵&#xff08;Matrix&#xff09;的一些初级算法。 一、矩阵的行列式&#xff08;Determinant&#xff09; 矩阵行列式是指矩阵的全部元素构成的行列式&#xff0c;设A(a)是数域P上的一个n阶矩阵&#xff0c;则所有A(a)中的元素组成的行列式称为矩阵A的行列式&…...

人工智能|推荐系统——基于tensorflow的个性化电影推荐系统实战(有前端)

代码下载&#xff1a; 基于tensorflow的个性化电影推荐系统实战(有前端).zip资源-CSDN文库 项目简介&#xff1a; dl_re_web : Web 项目的文件夹re_sys&#xff1a; Web app model&#xff1a;百度云下载之后&#xff0c;把model放到该文件夹下recommend&#xff1a; 网络模型相…...

Hive SQL编译成MapReduce任务的过程

目录 一、架构及组件介绍 1.1 Hive底层架构 1.2 Hive组件 1.3 Hive与Hadoop交互过程 二、Hive SQL 编译成MR任务的流程 2.1 HQL转换为MR源码整体流程介绍 2.2 程序入口—CliDriver 2.3 HQL编译成MR任务的详细过程—Driver 2.3.1 将HQL语句转换成AST抽象语法树 词法、语…...

【C++】快速上手map、multimap、set、multiset

文章目录 一、前言二、set / multiset1. 常见应用2. 核心操作 三、map / multimap1. 常见应用2. 核心操作 一、前言 S T L STL STL 中的关联式容器分为树型结构和哈希结构&#xff0c;树型结构主要有四种&#xff1a; s e t set set、 m u l t i s e t multiset multiset、 m a…...

【分享】图解ADS+JLINK调试ARM

文章是对LPC2148而写的&#xff0c;但是对三星的44B0芯片同样适用&#xff0c;只需要在选择时将相应的CPU选择的S3C44B0就可以了。 JLINK在ADS下调试心得 前两天一个客户用jlink在ADS下调试LPC2148总报错&#xff0c;这个错误我之前在调试LPC2200的时候也碰到过&#xff0c;后…...

反无人机系统技术分析,无人机反制技术理论基础,无人机技术详解

近年来&#xff0c;经过大疆、parrot、3d robotics等公司不断的努力&#xff0c;具有强大功能的消费级无人机价格不断降低&#xff0c;操作简便性不断提高&#xff0c;无人机正快速地从尖端的军用设备转入大众市场&#xff0c;成为普通民众手中的玩具。 然而&#xff0c;随着消…...

Kotlin和Java 单例模式

Java 和Kotlin的单例模式其实很像&#xff0c;只是Kotlin一部分单例可以用对象类和委托lazy来实现 Java /*** 懒汉式&#xff0c;线程不安全*/ class Singleton {private static Singleton instance;private Singleton() {}public static Singleton getInstance() {if (insta…...

软考 系统分析师系列知识点之信息系统战略规划方法(9)

接前一篇文章&#xff1a;软考 系统分析师系列知识点之信息系统战略规划方法&#xff08;8&#xff09; 所属章节&#xff1a; 第7章. 企业信息化战略与实施 第4节. 信息系统战略规划方法 7.4.5 信息工程方法 信息工程&#xff08;Information Engineering&#xff0c;IE&…...

政安晨:示例演绎TensorFlow的官方指南(一){基础知识}

为什么要示例演绎&#xff1f; 既然有了官方指南&#xff0c;咱们在官方指南上看看就可以了&#xff0c;为什么还要写示例演绎的文章呢&#xff1f; 其实对于初步了解TensorFlow的小伙伴们而言&#xff0c;示例演绎才是最重要的。 官方文档已经假定了您已经具备了相当合适的…...

node - 与数据库交互

在Web开发中,与数据库交互是常见的需求,用于持久化存储、检索和操作数据。不同的后端技术和数据库类型(如关系型数据库和非关系型数据库)有着不同的交互方式。下面介绍几种常见的数据库交互方法。 关系型数据库 关系型数据库(如MySQL、PostgreSQL、SQLite)使用结构化查…...

速盾:2024年cdn在5g时代重要吗

在2024年&#xff0c;随着5G技术的普及与应用&#xff0c;内容分发网络&#xff08;Content Delivery Network&#xff0c;CDN&#xff09;在数字化时代中的重要性将进一步巩固和扩大。CDN是一种用于快速、高效地分发网络内容的基础设施&#xff0c;它通过将内容部署在全球各地…...

微信小程序(四十一)wechat-http的使用

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.模块下载 2.模块的使用 在终端输入npm install wechat-http 没有安装成功vue的先看之前的一篇 微信小程序&#xff08;二十&#xff09;Vant组件库的配置- 如果按以上的成功配置出现如下报错先输入以下语句 …...

所有设计模式大全及学习链接

文章目录 创建型设计模式结构型设计模式行为型设计模式 创建型设计模式 一种创建对象的设计模式&#xff0c;它们提供了一种灵活的方式来创建对象&#xff0c;同时隐藏了对象的创建细节。以下是常见的创建型设计模式&#xff1a; 工厂方法模式&#xff08;Factory Method Patte…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

【Go语言基础【13】】函数、闭包、方法

文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数&#xff08;函数作为参数、返回值&#xff09; 三、匿名函数与闭包1. 匿名函数&#xff08;Lambda函…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...