案例介绍

欢迎来到我的小院,我是霍大侠,恭喜你今天又要进步一点点了!
我们来用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. L2-010. 排座位(种类并查集)

    布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位.无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,对任何一对客人,请编写程序告诉主人他们是否能被安排同席. 输入格式: ...

  2. 聊聊与前端工程师天然互补的 Serverless

    作者:灵轮_(阿里云前端技术专家)_ 作为前端工程师,我们的使命是为用户提供良好的前端用户体验.随着云原生时代的到来,显而易见的,我们能做的更多了.Serverless 产品的特点是免运维.按量付费和 ...

  3. 通过部署流行 Web 框架掌握 Serverless 技术

    大家好,我是霍大侠,本篇我们通过学习部署流行 Web 框架,如 Spring Boot,Express,Web IDE,让你掌握 Serverless 函数计算架构和技术,领略弹性并发.高可用的好处. ...

  4. php开发之文件读取、写入

    前言 续之前的系列,这里php开发的文件操作的内容读取以及文本写入的部分 文件读取代码的实现 css代码 本系列的php博客都是这个css,名字都是index.css /* css样式初始化 */ * ...

  5. Liunx运维(一)-命令行

    一.命令行的开启与推出 1.exit 2.logout 3.ctrl+d   二.命令行提示符 1.#root用户 2.$普通用户 3.~当前用户所在的路径 4.全局配置文件: /etc/profil ...

  6. java进阶(4)--抽象类与接口的区别

    1.抽象类是半抽象的,接口是全抽象的   2.抽象类中有构造方法,接口中没有构造方法   3.类与类之间不能多继承,接口与接口之间支持多继承   4.一个类可以同时实现多个接口,一个类只能继承一个抽象 ...

  7. java基础-数组-day06

    1. 引入数组 录入10个学生的成绩 求和 求平均 import java.util.Scanner; public class TestArray01{ public static void mai ...

  8. CSS3之transition

    随着css3不断地发展,越来越多的页面特效可以被实现. 例如当我们鼠标悬浮在某个tab上的时候,给它以1s的渐进变化增加一个背景颜色.渐进的变化可以让css样式变化得不那么突兀,也显得交互更加柔和. ...

  9. [SpringMVC] - 解决Jackson中文乱码 : springmvc-servlet.xml

    <!-- 指定响应体返回类型和编码 , 解决乱码????的问题 --> <mvc:annotation-driven> <mvc:message-converters r ...

  10. 【 js 】 构造函数返回的注意事项

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...