案例介绍

欢迎来到我的小院,我是霍大侠,恭喜你今天又要进步一点点了!
我们来用CSS编程实战案例,使用

列表标签完成一个下拉菜单样式的表单部件。

案例演示

运行代码后在浏览器弹出由

标签组成的下拉菜单样式的列表。

源码学习

进入核心代码学习,我们先来看HTML模板中的代码。

<!-- 有个小院-兴趣编程 -->
<div class="select active">
<span class="value">Cherry</span>
<ul class="optList">
<li class="option highlight">Cherry</li>
<li class="option">Lemon</li>
<li class="option">Banana</li>
<li class="option">Strawberry</li>
<li class="option">Apple</li>
</ul>
</div>

然后再让我们来看CSS核心代码。

/* 有个小院-兴趣编程 */
*{
padding: 0px;
margin: 0px;
}
/* 设置背景色 */
body{
background-color: #227755;
}
.select {
/* 设置边框外边距 */
margin-top: 200px;
margin-left: 500px;
/* div为相对定位 */
position: relative;
/* div设置为行内块元素 */
display : inline-block;
} /* 选择类名为.select元素内的所有类名为.optList的元素 */
.select .optList {
position: absolute;
top : 100%;
left : 0;
} .select .optList.hidden {
max-height: 0;
/* 元素不可见 */
visibility: hidden;
} /* 设置span标签样式及背景 */
.select {
/* 字体样式设置 */
font-size : 0.625em; /* 10px */
font-family : Verdana, Arial, sans-serif; /* -moz-box-sizing : border-box; */
box-sizing : border-box; padding : 0.1em 2.5em 0.2em 0.5em; /* 1px 25px 2px 5px */
width : 10em; /* 100px */ border : 0.2em solid #000; /* 2px */
/* 添加圆角边框 */
border-radius : 0.4em; /* 4px */ box-shadow : 0 0.1em 0.2em rgba(0, 0, 0, .45); /* 0 1px 2px */ background : #F0F0F0;
background : -webkit-linear-gradient(90deg, #E3E3E3, #fcfcfc 50%, #f0f0f0);
background : linear-gradient(0deg, #E3E3E3, #fcfcfc 50%, #f0f0f0);
} .select .value {
display : inline-block;
width : 100%;
/* 溢出隐藏 */
overflow : hidden;
/* 文本不进行换行 */
white-space : nowrap;
text-overflow : ellipsis;
vertical-align: top;
} /* 设置下拉框三角标志样式 */
.select:after {
content : "▼";
position: absolute;
/* 设置元素的堆叠顺序 */
z-index : 1;
height : 100%;
width : 2em; /* 20px */
top : 0;
right : 0; padding-top : .1em; -moz-box-sizing : border-box;
box-sizing : border-box; text-align : center; border-left : .2em solid #000;
border-radius: 0 .1em .1em 0; background-color : #000;
color : #FFF;
} /* 设置列表背景样式 */
.select .optList {
z-index : 2;
/* 设置列表项目样式为不使用项目符号,去掉默认样式黑点 */
list-style: none;
margin : 0;
padding: 0;
/* 设置背景色边框样式 */
background: #f0f0f0;
border: .2em solid #000;
border-top-width : .1em;
border-radius: 0 0 .4em .4em; box-shadow: 0 .2em .4em rgba(0,0,0,.4); -moz-box-sizing : border-box;
box-sizing : border-box; min-width : 100%;
max-height: 10em; /* 100px */
overflow-y: auto;
overflow-x: hidden;
} .select .option {
padding: .2em .3em;
} .select .highlight {
background: #000;
color: #FFF;
}

记得关注我,每天学习一点点

你觉得这个案例结果可以应用在什么地方?

全网可搜:小院里的霍大侠, 免费获取简单易懂的实战编程案例。编程/就业/副业/创业/资源。
私微信:huodaxia_xfeater
二维码: http://www.yougexiaoyuan.com/images/weixin_huodaxia.jpg
公众号:有个小院(微信公众号:yougexiaoyuan)
github:yougexiaoyuan (视频源码免费获取)
(部分素材来源于互联网,如有保护请联系作者)

教你用CSS实现表单部件的更多相关文章

  1. 纯CSS实现表单验证

    ladies and 乡亲们,表单验证你在做吗?客户端or服务器端,javascript or jquery,动手写 or 使用插件,今天我们来探索下使用纯css实现表单验证,借以学习css sele ...

  2. (10)用css建立表单

    1.用css建立表单 本篇资料主要介绍使用css设置表单元素的方法. 表单是网页与用户交互所不可缺少的元素,表单是网页的访问者进行交互的接口,例如大家都常遇到的:网上注册.网上登录.网上交易.网上投票 ...

  3. 学习笔记 第十章 使用CSS美化表单

    第10章   使用CSS美化表单 [学习重点] 正确使用各种表单控件 熟悉HTML5新增的表单控件 掌握表单属性的设置 设计易用性表单页面 10.1  表单的基本结构 表单包含多个标签,由很多控件组成 ...

  4. CSS之表单元素

    表单就是收集用户信息的,就是让用户填写的.选择的. 1                <div> 2                         <h3>欢迎注册本网站&l ...

  5. css表格表单和统筹

    css:表格表单和统筹 学习目标 1.表单标签及属性高级 2.表格标签及属性高级 3.CSS统筹 4.BFC概念和应用场景 一.表单标签及属性高级 回顾: 表单的作用:用来收集用户的信息的; 表单的组 ...

  6. 应用Css美化表单

    原来的效果  美化之后的效果  实现代码 <style> .container { margin:0auto; width:620px; } fieldset { padding:18px ...

  7. 一天搞定CSS:表单(form)--20

    1.表单标签 2.input标签属性与取值 代码演示 <!DOCTYPE html> <html> <head> <meta charset="UT ...

  8. CSS实现表单

    效果图如下: HTML代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  9. css form表单样式清除

    开发项目中表单常用的清楚样式: 1.改变placeholder默认字体颜色 ::-webkit-input-placeholder{color: #333;} :-moz-placeholder{co ...

  10. css实现表单label文字两端对齐

    如图,在我们写页面的时候,经常遇到这种的情况,而需求是想让label文字两端对齐,我们来看看如何用css解决 /**css代码**/ ul li{ list-style: none; } .info- ...

随机推荐

  1. 【收藏】制作艺术二维码,用 Stable Diffusion 就行!

    [收藏]Stable Diffusion 制作光影文字效果 https://www.cnblogs.com/Serverless/p/17620406.html 基于函数计算FC 快捷部署 Stabl ...

  2. 【有奖体验】叮!你有一张 3D 卡通头像请查收

    立即体验基于函数计算部署[图生图]一键部署3D卡通风格模型: https://developer.aliyun.com/topic/aigc_fc 人工智能生成内容(Artificial Intell ...

  3. S3C2440移植linux3.4.2内核之内核裁剪

    上一节S3C2440移植linux3.4.2内核之支持YAFFS文件系统我们修改了内核支持了yaffs2文件系统,这节我们裁剪内核. 目录 为什么要裁剪内核? 首先裁剪内核里无关的CPU/单板文件 裁 ...

  4. MongoDB 根据多个条件批量修改

    转载请注明出处: MongoDB 根据单个条件修改的sql 如下: db.collection_name.update({"userid":"1111111"} ...

  5. 文心一言 VS 讯飞星火 VS chatgpt (185)-- 算法导论14.1 2题

    二.用go语言,对于图 14-1中的红黑树 T 和关键字 x.key 为35的结点x,说明执行 OS-RANK(T,x) 的过程. 文心一言: 在红黑树中,OS-RANK(T, x) 是一个操作,用于 ...

  6. 2023第十四届极客大挑战 — RE WP

    RE方向出自:队友. Shiftjmp 去花后按p然后再反编译 最后flag为SYC{W3lc0me_tO_th3_r3veR5e_w0r1d~} 点击就送的逆向题 gcc 1.s -o 1` 生成e ...

  7. css - 去掉图片下的白边

    造成原因: 图片的 display 属性默认是 inline ,而这个属性的 vertical-align 的默认值是baseline. 解决办法1( 建议使用block ,  对 ie浏览器 比较友 ...

  8. JMS微服务远程调用性能测试 vs .Net Core gRPC服务

    gRPC性能测试(.net 5) 创建一个最简单的gRPC服务,服务器代码如下: using Grpc.Core; using Microsoft.Extensions.Logging; using ...

  9. 【Kafka系列】(一)Kafka入门

    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 系列文章地址 Kafka是什么? 一句话概括:Apache K ...

  10. [转帖]MySQL Decimal 的实现方法

    码: 背景 数字运算在数据库中是很常见的需求, 例如计算数量.重量.价格等, 为了满足各种需求, 数据库系统通常支持精准的数字类型和近似的数字类型. 精准的数字类型包含 int, decimal 等, ...