CSS学习记录15

CSS下拉菜单

使用CSS创建可悬停的下拉列表。

下拉式式菜单

.dropdown类使用position:relative,当我们希望将下拉内容放置在下拉按钮的正下方(使用position:absolute)时,需要使用该类。

.dropdown-content 类保存实际的下拉内容。默认情况下它是隐藏的,并将悬停时显示。

使用CSSbox-shadow属性,这样下拉菜单看起来像一张“卡片”。

<!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>.dropbtn {background-color: #008CBA;color: white;padding: 16px;font-size: 16px;border: none;cursor: pointer;}.dropdown {position: relative;display: inline-block;}.dropdown-content {display: none;position: absolute;background-color: #f9f9f9;min-width: 160px;box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);z-index: 1;}.dropdown-content a {color: black;padding: 12px 16px;text-decoration: none;display: block;}.dropdown-content a:hover {background-color: #f1f1f1}.dropdown:hover .dropdown-content {display: block;}.dropdown:hover .dropbtn {background-color: #008CBA;}</style>
</head>
<body><h1>下拉菜单</h1><p>请把鼠标移到按钮上,以打开下拉菜单。</p><div class="dropdown"><button class="dropbtn">Dropdown</button><div class="dropdown-content"><a href="#">Link 1</a><a href="#">Link 2</a><a href="#">Link 3</a></div></div><p><b>Note:</b>测试链接用了 href="#"。真实的网站会用 URL。</p></body>
</html>

右对齐的下拉菜单内容

如果希望下拉菜单从右到左而不是从左到右,请添加right:0;

.dropdown-content {right: 0;
}

CSS属性选择器

CSS可以设置带有特定属性或属性值的HTML元素的样式。

CSS[attribute] 选择器

[attribute]选择器用于选取带有指定属性的元素。下例将选择所有带有target属性的<a>元素:

a[target] {background-color: yellow;
}

CSS[attribute="value"] 选择器

[attribute="value"]选择器用于选取带有指定属性和值的元素。下例选取所有带有target=“_blank"属性的<a>元素:

a[target="_blank"] { background-color: yellow;
}

CSS[attribute~="value"]选择器

[attribute~="value"]选择器选取属性值包含指定词的元素。下例选取title属性包含”flower"单词的所有元素:

[title~="flower"] {border: 5px solid yellow;
}

上面的例子会匹配以下属性的元素:title="flower"、title="summer flower" 以及 title="flower new",但不匹配:title=“my-flower" 或 title="flowers"。

CSS[attribute|="value"]选择器

[attribute|="value"]选择器用于选取指定属性以指定值开头的元素。下例选取class属性以”top“开头的所有元素:

注意:值必须是完整或单独的单词,比如class="top"或者后跟连字符的,例如:class="top-text"。

[class|="top"] {background: yellow;
}

CSS[attribute^="title]选择器

[attribute^="value"]选择器用于选取指定属性以指定值开头的元素。下例选取class属性以"top"开头的所有元素:

提示:值不必是完整单词。

[class^="top"] {background: yellow;
}

CSS[attribute$="value"]选择器

[attribute$="value"]选择器用于选取指定属性以指定值结尾的元素。下例选取class属性以”test"结尾的所有元素:

提示:值不必是完整单词。

[class$="test"] {background: yellow;
}

CSS[attribute*="value"]选择器

[attribute*="value"]选择器选取属性值包含指定词的元素。下例选取class属性包含"te"的所有元素:

提示:值不必是完整单词!

[class*="te"] {background: yellow;
}

设置表单样式

若为不带class或id的表单设置样式,属性选择器会很有用:

input[type="text"] {width: 150px;display: block;margin-bottom: 10px;background-color: yellow;
}input[type="button"] {width: 120px;margin-left: 35px;display: block;
}

 所有CSS属性选择器

选择器例子例子描述
[attribute][target]选择带有 target 属性的所有元素。
[attribute=value][target=_blank]选择带有 target="_blank" 属性的所有元素。
[attribute~flower][title~=flower]选择带有包含 "flower" 一词的 title 属性的所有元素。
[attribute|=value][lang|=en]选择带有以 "en" 开头的 lang 属性的所有元素。
[attribute^=value]a[href^="https"]选择其 href 属性值以 "https" 开头的每个 <a> 元素。
[attribute$=value]a[href$=".pdf"]选择其 href 属性值以 ".pdf" 结尾的每个 <a> 元素。
[attribute*=value]a[href*="school"]选择其 href 属性值包含子串 "school" 的每个 <a> 元素。

CSS表单

 通过使用CSS,可以极大地改善HTML表单的外观:

设置输入字段的样式

使用width属性来确定字段的宽度:

input {width: 100%;
}

 填充输入框

使用padding属性在文本字段内添加空间。

提示:若有很多输入,那么您可能还需要添加外边距,以便在它们之外添加更多空间:

input[type=text] {width: 100%;padding: 12px 20px;margin: 8px 0;box-sizing: border-box;
}

带边框的输入框

请使用border属性更改边框的粗细和颜色,并使用border-radius属性添加圆角:

如果仅需下边框,请使用border-bottom属性:

input[type=text] {border: 2px solid red;border-radius: 4px;
}

彩色的输入框

请使用background-color属性位输入添加背景色,并使用color属性更改文本颜色:

input[type=text] {background-color: #3CBC8D;color: white;
}

获得焦点的输入框 

默认情况下,默写浏览器在获得焦点(单击)时会在输入框周围添加蓝色轮廓。您可以通过向输入添加outline:none; 来消除此行为。

使用:focus选择器可以在输入字段获得焦点时为其设置样式:

input[type=text]:focus {background-color: lightblue;
}

带有图标/图像的输入框

如果希望在输入框中包含图标,请使用background-image属性,并将其与background-position属性一起设置。还要注意,我们添加了一个较大的左内边距(padding-left)来留出图标的空间:

input[type=text] {background-color: white;background-image: url('searchicon.png');background-position: 10px 10px; background-repeat: no-repeat;padding-left: 40px;
}

带动画效果的搜索输入框

使用CSS transiton属性为搜索输入框获得焦点时的宽度变化设置动画。

input[type=text] {transition: width 0.4s ease-in-out;
}input[type=text]:focus {width: 100%;
}

设置文本域的样式

提示:使用resize属性可防止对 textareas 调整大小(禁用右下角的”抓取器“):

textarea {width: 100%;height: 150px;padding: 12px 20px;box-sizing: border-box;border: 2px solid #ccc;border-radius: 4px;background-color: #f8f8f8;resize: none;
}

设置菜单的样式

select {width: 100%;padding: 16px 20px;border: none;border-radius: 4px;background-color: #f1f1f1;
}

设置输入按钮的样式

input[type=button], input[type=submit], input[type=reset] {background-color: #4CAF50;border: none;color: white;padding: 16px 32px;text-decoration: none;margin: 4px 2px;cursor: pointer;
}

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

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

相关文章

《国产单片机,soc的一些现实问题》

大概从口罩开始&#xff0c;芯片断供。在中低端市场&#xff0c;国外mcu&#xff0c;国外soc趁机抢占了大量市场份额。 但是因为大家都用国外了&#xff0c;价格优势依然不明显。 有一些没有核心技术的公司&#xff0c;或老板业务或采购出身&#xff0c;不懂技术。 在一堆芯片面…

AdminJS - 现代化的 Node.js 管理面板框架详解

AdminJS - 现代化的 Node.js 管理面板框架详解 什么是 AdminJS? AdminJS 是一个自动化的管理面板框架&#xff0c;专为 Node.js 应用程序设计。它可以让开发者快速构建功能强大的管理后台界面&#xff0c;而无需编写大量重复的代码。 主要特点 自动 CRUD 操作 自动生成增删…

RabbitMQ全局流量控制

RabbitMQ全局流量控制 流控机制流控是对什么进行控制&#xff1f;rabbitmq进程邮箱流控机制是什么&#xff1f; 流控原理流控原理流程 流控状态显示流控对象流控机制对象主要进程各进程状态情形分析 性能提升提升队列性能方式 当消息积压时&#xff0c;消息会进入到队列深处&am…

大数据平台

大数据行业应用持续升温&#xff0c;特别是企业级大数据市场正在进入快速发展时期。越来越多的企业期望实现数据孤岛的打通&#xff0c;整合海量的数据资源&#xff0c;挖掘并沉淀有价值的数据&#xff0c;进而驱动更智能的商业。随着公司数据爆发式增长&#xff0c;原有的数据…

鸿蒙生态的崛起:开发实践、认证路径与激励策略

目录 前言 鸿蒙生态能力和行业解决方案 1、鸿蒙创新能力 2、鸿蒙行业解决方案 中软鸿蒙生态业务布局 1、深度参与鸿蒙生态建设 2、提供一站式鸿蒙生态服务 &#xff08;1&#xff09;服务目录 &#xff08;2&#xff09;改造过程的关键点 &#xff08;3&#xff09;鸿…

Vue如何来处理动画

Vue 提供了多种方式来处理动画&#xff0c;使得创建动态用户界面变得简单而灵活。以下是几种关于 Vue 动画的技巧和最佳实践&#xff0c;帮助你更高效地在项目中实现动画效果&#xff1a; 1. 使用 <transition> 和 <transition-group> 组件 Vue 内置的 <trans…

指令遵循数据集IFEval介绍:中英双语

IFEval数据集介绍&#xff1a;评估大语言模型指令遵循能力 1. IFEval数据集提出的问题 随着大语言模型&#xff08;如GPT-4、PaLM 2等&#xff09;在自然语言任务中的广泛应用&#xff0c;模型的指令遵循能力&#xff08;Instruction Following&#xff09;成为一个重要评估指…

Rust中自定义Debug调试输出

在 Rust 中&#xff0c;通过为类型实现 fmt::Debug&#xff0c;可以自定义该类型的调试输出。fmt::Debug 是标准库中的一个格式化 trait&#xff0c;用于实现 {:?} 格式的打印。这个 trait 通常通过自动派生&#xff08;#[derive(Debug)]&#xff09;来实现&#xff0c;但你也…

【git使用】git patch操作的常用命令:patch -p1 < xxxx.patch

patch -p1 < xxxx.patch 是一个在 Unix/Linux 系统中常用的命令&#xff0c;其主要含义如下&#xff1a; 一、patch 命令 patch 是一个用于对文件进行补丁操作的工具。补丁文件&#xff08;通常是 .patch 文件&#xff09;包含了对原始文件的修改信息&#xff0c;这些修改可…

基于Qt的上位机通讯库

1.前言 做Qt上位机已经有两年的时间了&#xff0c;上位机主要是和下游器件打交道的&#xff0c;通过modbus、tcp、串口等协议来控制这些设备&#xff0c;通过一定的时序控制&#xff0c;完成所需要的工作流程。这其中最重要的就是通讯了&#xff0c;上位机开发过程中的相当一部…

《Kali Linux 软件源更换攻略:优化软件获取与系统更新》

KALI为什么要换源 速度提升 Kali Linux 默认的软件源服务器通常位于国外。在从这些国外源下载软件包、更新系统时&#xff0c;会受到网络带宽、网络延迟等因素的限制。例如&#xff0c;在中国&#xff0c;连接到国外服务器的网络速度可能较慢&#xff0c;尤其是在下载大型软件…

docker安装mysql5.7

1、宿主机创建映射目录 mkdir -p /data/mysql/log mkdir -p /data/mysql/data mkdir -p /data/mysql/conf这里我放在了/data/mysql目录下 2、拉取mysql镜像 docker pull mysql:5.7注意是5.7版本&#xff0c;如果是8版本操作会略有不同&#xff0c;下篇文章介绍安装8版本的操…

RabbitMQ 安装、配置和使用介绍 使用前端js直接调用方式

1. 安装 RabbitMQ 1.1 安装 Erlang RabbitMQ 是基于 Erlang 语言开发的&#xff0c;因此首先需要安装 Erlang。 在 Ubuntu 上安装 Erlang&#xff1a; bash sudo apt-get update sudo apt-get install erlang 在 CentOS 上安装 Erlang&#xff1a; bash sudo yum insta…

PyTorch 的 torch.unbind 函数详解与进阶应用:中英双语

中文版 PyTorch 的 torch.unbind 函数详解与进阶应用 在深度学习中&#xff0c;张量的维度操作是基础又重要的内容。PyTorch 提供了许多方便的工具来完成这些操作&#xff0c;其中之一便是 torch.unbind。与常见的堆叠函数&#xff08;如 torch.stack&#xff09;相辅相成&am…

SQLServer利用QQ邮箱做SMTP服务器发邮件

环境 Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) SQL Server Management Studio 15.0.18384.0 SQL Server 管理对象 (SMO) 16.100.46367.54 Microsoft .NET Framework 4.0.30319.42000 操作系统 Windows Server2019 ———————————————— 前言&#xf…

好用的网站-直接复制的文字图标不需要引入

分享一个前端不需要引入的&#xff0c;可以直接复制的图标网站 直接复制放在代码中 特殊符号大全&#xff0c;可直接复制黏贴 (shijianchuo.net)

修改uniapp下拉刷新圆圈颜色

直接看图 修改前就是常规的绿色 自定义更符合我们的软件 直接说方法 修改 在App.vue的style样式里添加一行 .uni-page-refresh--refreshing .uni-page-refresh__path{stroke:#FF2442; }我是通过 不执行 uni.stopPullDownRefresh(); 下拉刷新 之后通过F12看出来的 希望可以帮…

Maven插件打包发布远程Docker镜像

dockerfile-maven-plugin插件的介绍 dockerfile-maven-plugin目前这款插件非常成熟&#xff0c;它集成了Maven和Docker&#xff0c;该插件的官方文档地址如下&#xff1a; 地址&#xff1a;https://github.com/spotify/dockerfile-maven 其他说明&#xff1a; dockerfile是用…

〔 MySQL 〕视图

以下是上述文章的目录&#xff1a; 一、视图概述 视图的定义 二、基本使用 创建视图查询视图修改视图影响基表查询验证删除视图 三、视图规则和限制 命名规则数量限制索引和触发器安全性ORDER BY规则与表一起使用 四、实战案例 牛客实战OJ修改基表影响视图查询验证删除…

tomcat被检测到目标URL存在htp host头攻击漏洞

AI越来越火了,我们想要不被淘汰就得主动拥抱。推荐一个人工智能学习网站,通俗易懂,风趣幽默,最重要的屌图甚多,忍不住分享一下给大家。点击跳转到网站 Tomcat被检测到目标URL存在http host头攻击漏洞,这个漏洞复现一下就是黑客访问你的网站,之后中修改请求头中的host属…