web程序设计期末复习-简答题

article/2025/6/7 14:01:33

页面色彩搭配的基本原理

  1. 色彩的鲜明性。网页的色彩要鲜艳,容易引人注目。
  2. 色彩的独特性。要有与众不同的色彩,使得大家对你的印象强烈。
  3. 色彩的合适性。就是说色彩和你表达的内容气氛相合适。如用粉色体现女性站点的柔性。
  4. 色彩的联想性。不同色彩会产生不同的联想,蓝色想到天空,黑色想到黑夜,红色想到喜事,选择色彩和你想要的网页的内涵相关联。

建议:

1.用一种色彩。调整透明度或饱和度,产生新的色彩。这样的页面看起来色彩统一,有层次感。

2.用两种色彩。先选定一种色彩,然后选择它的对比色,整个页面色彩丰富但不花哨。

3.用一个色系。简单的说就是用一个感觉的色彩。

4.用黑色和一种彩色。

(基本方案)原则:同类色搭配;邻近色搭配;互补色搭配;对比色搭配

 什么是css 主要作用是什么

CSS(层叠样式表)是一种用于描述网页外观和格式的样式表语言,主要作用是控制网页元素的布局、颜色、字体等视觉表现。

 弹性布局 弹性盒子 怎么实现水平居中和垂直居中 怎么对齐 代码

在 CSS 中,弹性布局(Flexbox) 是一种现代的布局模式,特别适合在容器中对齐和分配空间。它通过设置一个容器为 display: flex 来启用。

<div class="container"><div class="box">内容</div></div>
.container {display: flex;justify-content: center; /* 水平居中 */align-items: center;      /* 垂直居中 */height: 100vh;            /* 容器高度占满整个视口,便于看到效果 */}

响应式布局怎么实现 自适应布局

使用 媒体查询(Media Queries) 弹性盒子(Flexbox) 网格布局(Grid) 相对单位 可以实现响应式/自适应布局。

 

响应式布局 vs 自适应布局

类型

特点

响应式布局

一个网站自动适应所有屏幕尺寸,使用灵活的布局和媒体查询

自适应布局

针对几种特定分辨率设计多个布局,根据设备加载不同的样式(较少使用)

什么是文档对象模型和浏览器对象模型

  • DOM(文档对象模型) 是表示和操作网页内容(HTML/XML 文档)的 API。
  • BOM(浏览器对象模型) 是用于操作浏览器窗口、历史、导航等功能的对象集合。

 DOM(Document Object Model)文档对象模型

 含义:

DOM 是将 HTML 或 XML 文档解析成一棵树形结构(称为“文档树”),每个节点代表文档中的一个部分(如元素、属性、文本等),允许 JavaScript 对其进行访问和操作。

主要作用:
  • 获取页面元素(如 document.getElementById()
  • 修改页面内容、样式或结构
  • 响应用户交互(如点击、输入)

 

BOM(Browser Object Model)浏览器对象模型

 含义:

BOM 是浏览器提供的用于与浏览器窗口交互的一组对象,它不是标准化的规范(不像 DOM 有统一标准),但大多数浏览器都支持常见的 BOM 对象。

 主要作用:
  • 控制浏览器窗口(打开、关闭、调整大小)
  • 获取浏览器信息(如版本、屏幕尺寸)
  • 实现页面跳转、历史记录管理等

什么是盒子模型

盒子模型(Box Model) 是 CSS 中用于描述网页元素在页面中所占空间的模型,它由内容(content)、内边距(padding)、边框(border)和外边距(margin)组成。

每个 HTML 元素都可以看作是一个矩形的“盒子”,这个盒子由以下四部分组成(从内到外):

部分

描述

Content

内容区域,即元素的实际内容(文字、图片等)

Padding

内边距,内容与边框之间的空间

Border

边框,围绕内容和内边距的一条线

Margin

外边距,盒子与其他元素之间的空白区域

 

div+css布局的优势

使用 div + CSS 布局网页,可以实现结构与样式分离,提高页面的可维护性、可读性和跨设备兼容性。

优势

说明

1. 结构清晰

使用<div>标签划分页面结构,HTML 只负责内容结构,CSS 负责样式表现,使代码逻辑更清晰。

2. 易于维护和修改

所有样式集中管理在 CSS 文件中,修改一个地方即可影响整个网站风格,节省开发时间。

3. 加快页面加载速度

减少冗余 HTML 代码(如嵌套表格),页面体积更小,加载更快。

4. 提高 SEO 优化效果

没有复杂的表格嵌套,搜索引擎更容易抓取页面内容,提升排名。

5. 更好的跨浏览器兼容性

合理使用 CSS 可以适配主流浏览器,同时支持响应式设计,适应不同设备。

6. 支持响应式布局

配合媒体查询(Media Queries)、Flexbox 或 Grid,可以轻松实现自适应网页设计。

7. 页面表现统一

多个页面共享同一个 CSS 文件,确保整个网站风格一致。

 

js编写网页动态效果的一般步骤

使用 JavaScript 编写网页动态效果的一般步骤是:获取元素 → 监听事件 → 操作元素或样式 → 实现交互效果。

步骤

描述

示例

1. 获取页面元素

使用document.getElementByIdquerySelector等方法获取需要操作的 HTML 元素

const btn = document.getElementById('myBtn');

2. 绑定事件监听器

为元素绑定用户交互事件,如点击、鼠标悬停、输入等

btn.addEventListener('click', function() { ... });

3. 判断逻辑/条件

在事件触发后,执行一些判断或数据处理逻辑

如判断表单是否填写正确、用户是否登录等

4. 操作 DOM 或 CSS 样式

修改元素内容、属性、样式或类名,实现视觉变化

element.style.color = 'red';element.classList.add('active');

5. 触发动态行为或动画

结合定时器、CSS 动画、过渡效果等,实现更丰富的动态效果

如淡入淡出、滑动菜单、轮播图等

 

长度单位 rem 等好处 换算 

rem 是相对于 HTML 根元素字体大小的相对单位,适合做响应式设计;而 em 是相对于当前元素字体大小的单位;px 是绝对单位,常用于固定尺寸。

常见 CSS 长度单位对比

单位

含义

特点

示例

px

像素(Pixel)

绝对单位,不会随其他设置缩放

font-size: 16px;

em

相对于当前元素的字体大小

如果当前未设置字体大小,则继承父级

font-size: 1.2em;

rem

相对于根元素(html)的字体大小

所有 rem 都基于 html 的 font-size

margin: 2rem;

vw

视口宽度的 1%

100vw = 整个视口宽度

width: 50vw;

vh

视口高度的 1%

100vh = 整个视口高度

height: 100vh;

%

百分比,相对于父容器

依赖父元素大小

width: 50%;

换算关系(以默认设置为例)

通常浏览器默认的 <html> 字体大小是 16px,所以:

单位

默认值

换算公式

1rem

= 16px

可通过修改html { font-size: 20px; }来调整

1em

= 当前元素的 font-size

若当前字体为 20px,则1em = 20px

1vw

= 1% 的视口宽度

若屏幕宽为 1000px,则1vw = 10px

1vh

= 1% 的视口高度

若屏幕高为 800px,则

使用 rem 的好处(为什么推荐使用?)

  1. 响应式设计更方便
    修改 <html>font-size,所有使用 rem 的元素都会按比例缩放,非常适合移动端适配。

  2. 可维护性强
    所有尺寸都基于根元素,便于统一管理。

  3. 无障碍友好
    用户如果在浏览器中设置了更大的默认字体大小,使用 rem 的页面也能自动适应。

块级元素行内元素 行内块级元素之间的区别

块级元素(block)独占一行,行内元素(inline)与其他内容共享一行,而行内块级元素(inline-block)像行内元素一样排列,但可以设置宽高和内外边距。 

 响应式布局的基本实现过程

 响应式布局的基本实现过程是:设置视口 → 使用媒体查询 → 采用弹性布局(Flexbox/Grid)→ 使用相对单位 → 图片等元素自适应。

步骤

描述

1. 设置视口(viewport)

在 HTML 中添加<meta>标签,确保移动端正确缩放页面

2. 使用媒体查询(Media Queries)

根据不同屏幕尺寸应用不同的 CSS 样式

3. 使用弹性布局(Flexbox / Grid)

实现灵活的、自动调整的页面结构

4. 使用相对单位(rem, em, %, vw/vh)

替代固定像素值,使布局更具适应性

5. 图片和媒体自适应

设置图片最大宽度为 100%,避免超出容器


http://www.hkcw.cn/article/DRDmkUJphD.shtml

相关文章

pikachu靶场通关笔记11 XSS关卡07-XSS之关键字过滤绕过(三种方法渗透)

目录 一、源码分析 1、进入靶场 2、代码审计 3、攻击思路 二、渗透实战 1、探测过滤信息 2、注入Payload1 3、注入Payload2 4、注入Payload3 本系列为通过《pikachu靶场通关笔记》的XSS关卡(共10关&#xff09;渗透集合&#xff0c;通过对XSS关卡源码的代码审计找到安…

基于Java的OPCDA采集中间件

1.软件功能及技术特点简介&#xff1a; 软件功能及技术特点简介&#xff1a; OPCDA是基于Java语言开发的OPC client&#xff08;OPC客户端&#xff09;跨平台中间件软件&#xff0c;他支持OPC SERVER的OPC DA1.0/2.0/3.0。OPCDA实时采集数据&#xff08;包括实时数据、报警数…

centos挂载目录满但实际未满引发系统宕机

测试服务器应用系统突然挂了&#xff0c;经过排查发现是因为磁盘“满了”导致的&#xff0c;使用df -h查看磁盘使用情况/home目录使用率已经到了100%,但使用du -sh /home查看发现实际磁盘使用还不到1G&#xff0c;推测有进程正在写入或占用已删除的大文件&#xff08;Linux 系统…

鸿蒙仓颉语言开发实战教程:购物车页面

大家上午好&#xff0c;仓颉语言商城应用的开发进程已经过半&#xff0c;不知道大家通过这一系列的教程对仓颉开发是否有了进一步的了解。今天要分享的购物车页面&#xff1a; 看到这个页面&#xff0c;我们首先要对它简单的分析一下。这个页面一共分为三部分&#xff0c;分别是…

Redisson单机模式

redisson调用unlock的过程 Redisson 是一个基于 Redis 的 Java 驻内存数据网格&#xff08;In-Memory Data Grid&#xff09;框架&#xff0c;提供了分布式和可扩展的数据结构和服务。Redisson 的 unlock 方法用于释放锁。下面是 unlock 方法的调用过程&#xff1a; 获取锁的状…

软件测试环境搭建与测试流程

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 1.软件测试环境搭建 思考&#xff1a; 在什么条件下做软件测试&#xff1f;怎么做软件测试&#xff1f; 1.1 搭建测试环境前 确定测试目的 功能测试&#xff…

Go语言学习-->从零开始搭建环境

Go语言学习–>从零开始搭建环境 1 开发环境 Go官网下载地址&#xff1a;https://golang.org/dl/ Go官方镜像站&#xff08;推荐&#xff09;&#xff1a;https://golang.google.cn/dl/ windos 平台下载&#xff1a; 我这里下载1.22稳定版 双击下载好的.msi文件 修改安装…

Mac 芯片系列 安装cocoapod 教程

安装声明&#xff1a; 本人是在搭梯子的环境下安装成功&#xff0c;前提是必须安装好安装homebrew环境。 1.检测rudy的源 2.查看源(目的:检测rudy的源) gem sources - l 3.移除源(目的:移除rudy自带的源) gem sources --remove https://rubygems.org/ 4.更换源(目的:替换成国…

idea不识别lombok---实体类报没有getter方法

介绍 本篇文章&#xff0c;主要讲idea引入lombok后&#xff0c;在实体类中加注解Data&#xff0c;在项目启动的时候&#xff0c;编译不通过&#xff0c;报错xxx.java没有getXxxx&#xff08;&#xff09;方法。 原因有以下几种 1. idea没有开启lombok插件 2. 使用idea-2023…

JavaWeb是什么?总结一下JavaWeb的体系

一&#xff1a;Maven 1.1 定义 不需要导入依赖&#xff0c;在配置文件描述配置信息&#xff0c;maven会自动导入 统一项目结构&#xff1a; 项目构建&#xff1a; 1.2 ideal集成 &#xff08;1&#xff09;maven配置 &#xff08;2&#xff09;创建maven项目 ‘ &#xff08;3&…

MEMCPY引发的非对齐访问

目录 前言背景代码直接运行的现象问题原因解决办法 前言 1&#xff0c;memcpy在keil中是伪装成函数的C语言关键字&#xff0c;有可能会被优化为字对齐形式__rt_memcpy_w 2&#xff0c;编译到memcpy位置的时候&#xff0c;编译器会检查地址类型&#xff0c;如果两个指针都是4字…

CSS(2)

文章目录 Emmet语法快速生成HTML结构语法 Snipaste快速生成CSS样式语法快速格式化代码 快捷键&#xff08;VScode&#xff09;CSS 的复合选择器什么是复合选择器交集选择器后代选择器(重要)子选择器(重要&#xff09;并集选择器(重要&#xff09;**链接伪类选择器**focus伪类选…

AI+在线教育系统源码:开发智能化互动网校平台全流程详解

在数字化浪潮席卷各行各业的当下&#xff0c;教育行业也不例外。从最早的PPT网课&#xff0c;到今天“AI互动教学”深度融合的智能网校系统&#xff0c;在线教育平台的底层逻辑和技术架构已然发生翻天覆地的变化。今天&#xff0c;笔者将为正计划进入在线教育领域的创业者、产品…

Prj09--8088单板机C语言8253产生1KHz方波(1)

1.8253原理图 2.Deepseek给出的参考程序 #include <stdio.h> #include <conio.h> #include <dos.h>// 8253定时器端口定义 #define PORT_8253_CNT0 0x9000 // 计数器0地址 #define PORT_8253_CNT1 0x9001 // 计数器1地址 #define PORT_8253_CNT2 …

女儿回应48岁妈妈顺产得子 意外怀孕引发热议

女儿回应48岁妈妈顺产得子。近日,广东河源一位48岁的再婚妈妈怀孕7个月自己都没察觉,还以为是“绝经发福”了。她28岁的女儿透露,妈妈和现任丈夫相识仅40天就闪婚,已经共同生活了7年。此前医生曾诊断这位妈妈没有卵泡无法怀孕,没想到却意外怀上了。女儿最初心情复杂,但现…

js-day7

JS学习之旅-day7 1.事件流1.1 事件流与两个阶段说明1.2 事件捕获1.3 事件冒泡1.4 阻止1.5 解绑事件 2. 事件委托3. 其他事件3.1 页面加载事件3.2 页面滚动事件3.3 页面尺寸事件 4. 元素尺寸与位置 1.事件流 1.1 事件流与两个阶段说明 事件流指的是事件完整执行过程中的流动路…

【Typst】5.文档结构元素与函数

概述 本节介绍Typst文档的核心文档结构元素及其对应函数&#xff0c;还有函数的用法。通过本节你将可以更好的使用脚本创建和控制页面元素。 系列目录 1.Typst概述2.Typst标记语法和基础样式3.Typst脚本语法4.导入、包含和读取5.文档结构元素与函数6.布局函数 set语句和sho…

每日八股文6.3

每日八股-6.3 Mysql1.COUNT 作用于主键列和非主键列时&#xff0c;结果会有不同吗&#xff1f;2.MySQL 中的内连接&#xff08;INNER JOIN&#xff09;和外连接&#xff08;OUTER JOIN&#xff09;有什么主要的区别&#xff1f;3.能详细描述一下 MySQL 执行一条查询 SQL 语句的…

【Linux】pthread多线程同步

参考文章&#xff1a;https://blog.csdn.net/Alkaid2000/article/details/128121066 一、线程同步 线程的主要优势在于&#xff0c;能够通过全局变量来共享信息。不过&#xff0c;这种便携的共享是有代价的&#xff1b;必须确保多个线程不会同时修改同一变量&#xff0c;或者某…

Spring AOP:面向切面编程 详解代理模式

文章目录 AOP介绍什么是Spring AOP&#xff1f;快速入门SpringAop引入依赖Aop的优点 Spring Aop 的核心概念切点(Pointcut)连接点、通知切面通知类型PointCut注解切面优先级Order切点表达式executionwithinthistargetargsannotation自定义注解 Spring AOP原理代理模式&#xff…