CSS学习记录14

CSS不透明度

opacity属性指定元素的不透明度/透明度。opacity属性的取值范围为0.0 ~ 1.0。 值越低,越透明:

img {opacity: 0.5;
}

opacity属性通常与:hover选择器一同使用,这样就可以在鼠标悬停时更改不透明度:

img {opacity: 0.5;
}img:hover {opacity: 1.0;
}

透明盒

使用opacity属性为元素的背景添加透明度,其所有子元素都继承相同的透明度。这可能会使完全透明的元素内文本难以阅读:

div {opacity: 0.3;
}

使用RGBA的透明度

如果您不希望对子元素应用不透明度,如上面的例子。请使用RGBA颜色值。下面的例子设置背景色而不是文本的不透明度:

div {background: rgba(76, 175, 80, 0.3) /* 不透明度为 30% 的绿色背景 */
}

CSS导航栏

易用的导航对于任何网站都很重要。通过使用CSS,您可以将无聊的HTML菜单转换为美观的导航栏。

导航栏基本上就是链接列表,因此使用<ul>和<li>元素会很有意义:

list-style-type:none; - 删除项目符号。导航条不需要列表项标记。

设置margin:0; 和 padding: 0; 删除浏览器的默认设置。

ul {list-style-type: none;margin: 0;padding: 0;
}

垂直导航栏

如果想要构建垂直导航栏,还可以在列表中设置<a>元素的样式:

 display:block; - 将链接显示为块元素可以使整个链接区域都可以被点击(而不仅仅是文本),还可以指定宽度(如果需要,还可以指定内边距、外边距、高度等)。

width: 60px; - 默认情况下,块元素会占用全部可用宽度。

ul {list-style-type: none;margin: 0;padding: 0;width: 200px;background-color: #f1f1f1;
}li a {display: block;color: #000;padding: 8px 16px;text-decoration: none;
}/* 鼠标悬停时改变链接颜色 */
li a:hover {background-color: #555;color: white;
}

 

活动/当前导航链接

向当前链接添加 "active" 类,以使用户知道他/她在哪个页面上:

.active {background-color: #4CAF50;color: white;
}

居中链接以及添加边框

 把text-align:center 添加到<li> 或 <a>,使链接居中。

将border属性添加到<ul>, 在导航栏周围添加边框。如果您还希望在导航栏内添加边框,请为所有<li>元素添加border-bottom,最后一个元素除外:

ul {border: 1px solid #555;
}li {text-align: center;border-bottom: 1px solid #555;
}li:last-child {border-bottom: none;
}

 

全高固定垂直导航栏

创建全高的”粘性“侧面导航:

ul {list-style-type: none;margin: 0;padding: 0;width: 25%;background-color: #f1f1f1;height: 100%; /* 全高 */position: fixed; /* 使它产生粘性,即使在滚动时 */overflow: auto; /* 如果侧栏的内容太多,则启用滚动条 */
}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>body {margin: 0;
}ul {list-style-type: none;margin: 0;padding: 0;width: 25%;background-color: #f1f1f1;position: fixed;height: 100%;overflow: auto;
}li a {display: block;color: #000;padding: 8px 16px;text-decoration: none;
}li a.active {background-color:#008CBA;color: white;
}li a:hover:not(.active) {background-color: #555;color: white;
}</style>
</head>
<body><ul><li><a class="active" href="#home">Home</a></li><li><a href="#news">News</a></li><li><a href="#contact">Contact</a></li><li><a href="#about">About</a></li></ul><div style="margin-left:25%;padding:1px 16px;height:1000px;"><h1>全高的固定侧导航栏</h1><h2>请尝试滚动此区域,并查看 sidenav 如何粘在页面上。</h2><p>请注意,此 div 元素的左外边距为 25%。这是因为侧导航栏被设置为 25% 宽。如果删除这个外边距,则 sidenav 将叠加到该 div 上。</p><p>还要注意,我们已为 sidenav 设置 overflow:auto。如果 sidenav 太长时(例如,如果其中有超过 50 个链接),会添加滚动条。</p><p>Some text..</p><p>Some text..</p><p>Some text..</p><p>Some text..</p><p>Some text..</p><p>Some text..</p><p>Some text..</p></div>
</body>
</html>

水平导航栏 

有两种创建水平导航栏的方法:使用行内或浮动列表项。

行内列表项:

构建水平导航栏的一种方法是,除了之前的标准代码外,还要将<li>元素指定为inline:

display:inline; 默认情况下,<li>元素是块元素。在这里,删除了每个列表项之前和之后的换行符,这样它们才能显示在一行。

li {display: inline;
}

浮动列表项

创建水平导航栏的另一种方法是浮动<li>元素,并为导航链接规定布局:

  • float:left; 使用float使块元素滑动彼此相邻
  • display: block; 将链接显示为块元素可以使整个链接区域都可单击(不仅是文本),而且允许我们指定填充(如果需要,还可以指定高度,宽度,边距等)
  • padding:8px; 使块元素更加美观。
  • background-color: #dddddd;为每个颜色添加灰色背景色

提示:如需全宽的背景色,请将background-color添加到<ul>而不是每个<a>元素:

li {float: left;
}a {display: block;padding: 8px;background-color: #dddddd;
}

举例: 

ul {list-style-type: none;margin: 0;padding: 0;overflow: hidden;background-color: #333;
}li {float: left;
}li a {display: block;color: white;text-align: center;padding: 14px 16px;text-decoration: none;
}/* 当鼠标悬停时把链接颜色更改为 #111(黑色) */
li a:hover {background-color: #111;
}

右对齐链接

通过将列表项向右浮动来右对齐链接(float:right;):

<ul><li><a href="#home">Home</a></li><li><a href="#news">News</a></li><li><a href="#contact">Contact</a></li><li style="float:right"><a class="active" href="#about">About</a></li>
</ul>

边框分隔栏

将border-right 属性添加到<li>,以创建链接分隔符:

/* 为所有列表项添加灰色右边框,最后一项(last-child)除外 */
li {border-right: 1px solid #bbb;
}li:last-child {border-right: none;
}

固定导航栏 

ul {position: fixed;top: 0;width: 100%;
}

粘性导航栏

为<ul>添加position:sticky; 以创建粘性导航栏。粘性元素会根据滚动位置在相对和固定之间切换。它是相对定位的,直到在视口中遇到给定的偏移位置为止 - 然后将其“粘贴”在适当的位置。

ul {position: -webkit-sticky; /* Safari */position: sticky;top: 0;
}
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><style>body {font-size: 28px;}ul {list-style-type: none;margin: 0;padding: 0;overflow: hidden;background-color: #333;position: -webkit-sticky;/* Safari */position: sticky;top: 0;}li {float: left;}li a {display: block;color: white;text-align: center;padding: 14px 16px;text-decoration: none;}li a:hover {background-color: #111;}.active {background-color: #4CAF50;}</style>
</head><body><div class="header"><h1>向下滚动</h1><p>请向下滚动以查看粘性效果。</p>
</div><ul><li><a class="active" href="#home">Home</a></li><li><a href="#news">News</a></li><li><a href="#contact">Contact</a></li>
</ul><h2>粘性导航栏实例</h2>
<p>如果导航栏到了滚动位置,它会<strong>粘</strong>到顶部。</p>
<p><b>注释:</b>Internet Explorer 不支持粘性定位并且 Safari 需要 -webkit- 前缀。</p>
<p>Some text to enable scrolling. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque eteum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandaenec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>
<p>Some text to enable scrolling. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque eteum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandaenec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>
<p>Some text to enable scrolling. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque eteum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandaenec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>
<p>Some text to enable scrolling. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque eteum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandaenec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p>
<p>Some text to enable scrolling. Lorem ipsum dolor sit amet, illum definitiones no quo, maluisset concludaturque eteum, altera fabulas ut quo. Atqui causae gloriatur ius te, id agam omnis evertitur eum. Affert laboramus repudiandaenec et. Inciderint efficiantur his ad. Eum no molestiae voluptatibus.</p></body></html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/64357.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【YashanDB知识库】如何处理yasql输入交互模式下单行字符总量超过限制4000字节

现象 在yasql执行sql语句后报错&#xff1a;YASQL-00021 input line overflow (>4000 byte at line 4) 原因 yasql在交互模式模式下单行字符总量限制4000字节&#xff0c;超出该限制即报错。 交互式模式下&#xff0c;yasql会显示一个提示符&#xff0c;通常是 SQL>…

为何ZLG致远电子要推出LGA嵌入式核心板?

LGA嵌入式核心板究竟有什么好&#xff1f;能让ZLG致远电子陆续推出了5个系列12个型号的LGA嵌入式核心板。 到目前为止&#xff0c;ZLG致远电子一共推出了M1106/M1107、M1126、M6Y2C、 A6Y2C、MR6450等5个系列&#xff0c;共12个型号的LGA形态的嵌入式核心板&#xff0c;涵盖了A…

C++小白实习日记——Pollnet,Efvi,UDP,数据类型转换(下)

内容太多了&#xff0c;这篇记录UDP接收端 一&#xff0c;UDP接收端接收数据 有了pollnet这个开源项目的支持&#xff0c;接收端的步骤为&#xff1a;1&#xff09;初始化硬编码的参数&#xff1a;接口&#xff0c;IP和端口 2&#xff09;创建接收文件.csv 3&#xff09;读…

【ROS2】坐标TF入门

1、简介 1)定义: TF(TransForm)是用于坐标系管理的工具,它提供了快速、高效的坐标变换和时间同步功能。 2)坐标系 坐标系:在机器人系统中,存在多个坐标系,如基坐标系(Base Frame)、世界坐标系(World Frame)、工具坐标系、工件坐标系等。这些坐标系之间的关系在机…

剑指Offer 03比特位计数

只是记录 题目链接 题目链接 自己想出来的 第一种解法 思路简述 遍历[0,n]之间的数字&#xff0c;对于每一个数字按照二进制的方式展开&#xff0c;判断最低位置是否为1&#xff0c;若为1则1&#xff0c;反之不加&#xff0c;直到该数字等于0就停止。 public static int[] …

某j 全局控制输入框不能输入表情符

在FormItem.vue文件中的function handleRules()添加两处表情正则校验&#xff0c;代码如下 效果&#xff1a; function handleRules(): ValidationRule[] {const { rules: defRules [], component, rulesMessageJoinLabel, label, dynamicRules, required } props.schema;if…

java中File类

1、介绍 File类定义了一些与平台无关的方法来操作文件&#xff0c;可以通过调用File类中的方法&#xff0c;实现创建、删除、重命名文件等操作。File类的对象主要用来获取文件本身的一些信息&#xff0c;如文件所在的目录、文件长度、文件读写权限等。数据流可以将数据写入到文…

Linux高性能服务器编程 | 读书笔记 | 10. 高性能I/O框架库Libevent

10. 高性能I/O框架库Libevent Linux服务器程序必须处理三类事件&#xff08;I/O、信号和定时事件&#xff09;&#xff0c;在处理这三类事件时需要考虑以下问题&#xff1a; **统一事件源。**统一处理这三类事件既能使代码简单易懂&#xff0c;又能避免一些潜在的逻辑错误。实…

Javaweb web后端maven介绍作用安装

自动导入到这个项目 src是源代码 main主程序&#xff0c;核心代码 java是Java源代码 resources是项目配置文件 test测试相关的 maven概述 介绍 依赖在本地仓库查找&#xff0c;如果本地仓库有&#xff0c;用本地仓库的依赖&#xff0c;本地没有&#xff0c;连接中央仓库&…

wazuh-modules-sca-scan

sca模块主函数wm_sca_main -> wm_sca_start 检查policy文件中的每一个项目wm_sca_check_policy static int wm_sca_check_policy(const cJSON * const policy, const cJSON * const checks, OSHash *global_check_list) {if(!policy) {return 1;}const cJSON * const id c…

基于单片机的智能窗帘(论文+源码)

1.系统设计 本课题智能窗帘系统的设计主要包括STM32单片机主控模块&#xff0c;光照检测模块&#xff0c;窗帘控制模块&#xff0c;键盘控制模块&#xff0c;显示模块和时钟模块等几个部分。总体设计框图如图2.1所示&#xff0c;其可以实现对当前光照强度的实时检测&#xff0…

Fastdfs V6.12.1集群部署(arm/x86均可用)

文章目录 一、 Fastdfs 介绍二、部署 信息三、步骤tracker/storage 机器的 compose 内容storage 机器的 composetracker 与 storage 启动目录层级与配置文件测试测试集群扩容与缩减注意事项 一、 Fastdfs 介绍 FastDFS 是一款高性能的分布式文件系统&#xff0c;特别适合用于存…

零基础开始学习鸿蒙开发-基础页面的设计

目录 1.样例图 2.逐项分析 2.1 头顶布局分析&#xff1a;首先我们要把第一行的图标绘制出来&#xff0c;一个左一个右&#xff0c;很明显&#xff0c;需要放在一个Row容器中&#xff0c;具体代码如下&#xff1a; 2.2 和头像同一行的布局&#xff0c;需要注意的是&#xff0c…

如何用细节提升用户体验?

前端给用户反馈是提升用户体验的重要部分&#xff0c;根据场景选择不同的方式可以有效地提升产品的易用性和用户满意度。以下是常见的方法&#xff1a; 1. 视觉反馈 用户执行了某些操作后&#xff0c;需要即时确认操作结果。例如&#xff1a;按钮点击、数据提交、页面加载等。…

[数据结构#2] 图(1) | 概念 | 邻接矩阵 | 邻接表 | 模拟

图是由顶点集合及顶点间的关系&#xff08;边&#xff09;组成的数据结构&#xff0c;可用 G ( V , E ) G(V,E) G(V,E)表示&#xff0c;其中&#xff1a; 顶点集合 V V V: V { x ∣ x ∈ 某数据对象集 } V\{x|x\in\text{某数据对象集}\} V{x∣x∈某数据对象集}&#xff0c;…

学习maven(maven 项目模块化,继承,聚合)

前言 本篇博客的核心&#xff1a;理解maven 项目模块化&#xff0c;继承&#xff0c;聚合 的含义 maven 项目模块化 含义 maven项目模块化&#xff1a;使用maven 构建项目&#xff0c;管理项目的方式&#xff0c;我们可以将maven项目根据内在的关系拆分成很多个小项目【模块】…

【OJ题解】最长回文子串

个人主页: 起名字真南的CSDN博客 个人专栏: 【数据结构初阶】 &#x1f4d8; 基础数据结构【C语言】 &#x1f4bb; C语言编程技巧【C】 &#x1f680; 进阶C【OJ题解】 &#x1f4dd; 题解精讲 目录 **题目链接****解题思路****1. 初步判断****2. 回文子串性质****3. 判断是…

EMQX 可观测性最佳实践

EMQX 介绍 EMQX 是一款开源、高度可伸缩、高可用的分布式 MQTT 消息服务器&#xff0c;同时也支持 CoAP/LwM2M 等一站式 IoT 协议接入。以下是 EMQX 的一些主要特点和功能&#xff1a; 海量连接与高并发&#xff1a;EMQX 能够处理千万级别的并发客户端&#xff0c;支持大规模…

kubeadm_k8s_v1.31高可用部署教程

kubeadm_k8s_v1.31高可用部署教程 实验环境部署拓扑图**署架构方案****Load Balance****Control plane node****Worker node****资源分配&#xff08;8台虚拟机&#xff09;**集群列表 前置准备关闭swap开启ipv4转发更多设置 1、Verify the MAC address and product_uuid are u…

mysql flink cdc 实时数据抓取

背景 通过监控mysql日志&#xff0c;获取表字段更新&#xff0c;用来做实时展示。 使用技术&#xff1a;Flink CDC Flink CDC 基于数据库日志的 Change Data Caputre 技术&#xff0c;实现了全量和增量的一体化读取能力&#xff0c;并借助 Flink 优秀的管道能力和丰富的上下游…