From 09c0678244c323fff6f7e7fc39e7f0fd8e446120 Mon Sep 17 00:00:00 2001 From: lvzl <627417163@qq.com> Date: Wed, 16 Aug 2023 16:47:18 +0800 Subject: [PATCH] refactor(html & css) --- articles/html5css/css/css_display.md | 68 +++- articles/html5css/html/index.md | 490 ++++++++++++--------------- articles/index.md | 12 +- 3 files changed, 288 insertions(+), 282 deletions(-) diff --git a/articles/html5css/css/css_display.md b/articles/html5css/css/css_display.md index cb1fd4c..4a83e97 100644 --- a/articles/html5css/css/css_display.md +++ b/articles/html5css/css/css_display.md @@ -14,8 +14,8 @@ prev: false **内联元素(inline)特性:也叫行内元素** -- 和相邻的内联元素在同一行; -- 宽度(width)、高度(height)、内边距的 top/bottom(padding-top/padding-bottom)和外边距的 top/bottom(margin-top/margin-bottom)都不可改变,就是里面文字或图片的大小; +- 和相邻的内联元素在同一行。 +- 宽度(width)、高度(height)、padding-top/padding-bottom 和 margin-top/margin-bottom 设置无效,就是里面文字或图片的大小。 **块级元素主要有:** @@ -25,9 +25,65 @@ address , blockquote , center , dir , div , dl , fieldset , form , h1 , h2 , h3 a , abbr , acronym , b , bdo , big , br , cite , code , dfn , em , font , i , img , input , kbd , label , q , s , samp , select , small , span , strike , strong , sub , sup ,textarea , tt , u , var -## 隐藏元素 - display:none 或 visibility:hidden +## 隐藏元素 -隐藏一个元素可以通过把 display 属性设置为"none",或把 visibility 属性设置为"hidden"。 +1. **CSS 属性 `display: none;`:** + 这是最常见和简单的隐藏元素的方式之一。通过设置 `display: none;`,元素会被完全从页面布局中移除,并且不会占据空间。 -- visibility:hidden 可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。 -- display:none 可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。 \ No newline at end of file + ```css + .hidden-element { + display: none; + } + ``` + + 特点: + + - 元素不占用空间,对布局没有影响。 + - 不会触发元素的渲染和交互事件。 + - 可以通过 JavaScript 动态地切换元素的显示与隐藏。 + +2. **CSS 属性 `visibility: hidden;`:** + 使用 `visibility: hidden;` 可以隐藏元素,但元素仍然占据空间,不会改变布局。 + + ```css + .hidden-element { + visibility: hidden; + } + ``` + + 特点: + + - 元素仍占用空间,对布局有影响。 + - 不会触发元素的渲染和交互事件。 + - 适用于需要占位但暂时隐藏的元素。 + +3. **CSS 属性 `opacity: 0;`:** + 通过将元素的不透明度设置为 0,可以隐藏元素,但仍然会占据空间,并影响布局。 + + ```css + .hidden-element { + opacity: 0; + } + ``` + + 特点: + + - 元素仍占用空间,对布局有影响。 + - 元素在渲染时会被处理,可能会影响性能。 + - 可以通过 CSS 动画实现渐变隐藏和显示效果。 + +4. **CSS 属性 `position: absolute; left: -9999px;`:** + 将元素移出可视区域,通常结合绝对定位来实现。 + + ```css + .hidden-element { + position: absolute; + left: -9999px; + } + ``` + + 特点: + + - 元素不占用空间,对布局没有影响。 + - 可以在屏幕外使用,但需要注意滚动问题。 + - 适用于需要在 DOM 结构中保留元素,但不需要显示的情况。 diff --git a/articles/html5css/html/index.md b/articles/html5css/html/index.md index 78a7449..09bcc8c 100644 --- a/articles/html5css/html/index.md +++ b/articles/html5css/html/index.md @@ -3,45 +3,45 @@ title: HTML5 author: lvzl --- -## 什么是HTML5 +## 什么是 HTML5 -HTML5是下一代标准。HTML4.01的上个版本诞生于1999年,HTML5目前为止仍然处于完善之中。 +HTML5 是下一代标准。HTML4.01 的上个版本诞生于 1999 年,HTML5 目前为止仍然处于完善之中。 -## HTML5新特性 +## HTML5 新特性 -- 用于媒介回放的video和audio元素 +- 用于媒介回放的 video 和 audio 元素 - 新的特殊内容元素:比如`article`,`footer`,`header`,`nav`,`section` - 新的表单控件:比如`calendar`、`date`、`time`、`email`、`url`、`search` -- 2D/3D绘图&效果 +- 2D/3D 绘图&效果 - 支持对本地离线存储 -## HTML5浏览器支持 +## HTML5 浏览器支持 -最新版本的五个主流浏览器都支持某些HTML5特性,IE9以上浏览器支持HTML5新特性。但是IE8以下的浏览器不支持 +最新版本的五个主流浏览器都支持某些 HTML5 特性,IE9 以上浏览器支持 HTML5 新特性。但是 IE8 以下的浏览器不支持 -IE8以下(包含IE8)以下版本浏览器兼容HTML5的方法,我们必须使用htmlshiv垫片包,让其支持HTML5新特性 +IE8 以下(包含 IE8)以下版本浏览器兼容 HTML5 的方法,我们必须使用 htmlshiv 垫片包,让其支持 HTML5 新特性 `` -## HTML5新标签 +## HTML5 新标签 -### 8个新语义元素和新属性 +### 8 个新语义元素和新属性 `header`,`section`,`footer`,`aside`,`nav`,`main`,`article`,`figure`所有的这些元素都是**块级**元素。 -所有的标签都支持HTML5新属性 +所有的标签都支持 HTML5 新属性 -| 属性 | 描述 | 浏览器支持性 | -| --------------- | ------------------------------------------------------------ | ------------------------------- | -| contenteditable | 规定是否可编辑元素的内容 | All | -| contextmenu | 指定一个元素的上下文菜单。当用户右击该元素,出现上下文菜单 | 只有Firefox浏览器支持 | -| data-* | 嵌入自定义数据 | All | -| draggable | 规定元素是否可拖动。链接和图像默认是可拖动的。经常用它实现拖放操作 | ie8以下浏览器都支持,其它不支持 | -| hidden | 规定对元素进行隐藏。如果使用该属性,则会隐藏元素,隐藏的元素不会被显示,可以通过js来设置hidden属性为true,使得元素变得可见 | All | +| 属性 | 描述 | 浏览器支持性 | +| --------------- | ------------------------------------------------------------------------------------------------------------------------------ | -------------------------------- | +| contenteditable | 规定是否可编辑元素的内容 | All | +| contextmenu | 指定一个元素的上下文菜单。当用户右击该元素,出现上下文菜单 | 只有 Firefox 浏览器支持 | +| data-\* | 嵌入自定义数据 | All | +| draggable | 规定元素是否可拖动。链接和图像默认是可拖动的。经常用它实现拖放操作 | ie8 以下浏览器都支持,其它不支持 | +| hidden | 规定对元素进行隐藏。如果使用该属性,则会隐藏元素,隐藏的元素不会被显示,可以通过 js 来设置 hidden 属性为 true,使得元素变得可见 | All | -### nav标签 +### nav 标签 -`