Box-shadow制作漂亮的外阴影输入框
背景:之前做项目中的一个移动端页面,关于在搜索框中输入信息查找对应的照片
改了几次ui图之后,最终的搜索框的设计图如下:

开始做页面的时候,就想到了用box-shadow 来实现外阴影边框、用border-radius来实现ui图的中的圆角。但是过程中也没有那么顺利,基本效果是实现了,可是那个搜索按钮总是和搜索框存在一点缝隙,特别是在ipad和iphone设备中更是明显,于是就通过浏览器的检查工具检查元素,最终发现是input(搜索框)元素的固有样式:padding:1px在作祟,导致布局不理想。
最终修改后的搜索框部分页面代码和效果图如下(搜索按钮绝对布局):
html:
<div class="content search-box">
<input class="input-number" id="input-number" value="" placeholder="输入参赛号或跑团名称查看照片"/>
<div class="search" id="search" >搜索</div>
</div>
CSS
.picture .search-box{
width: 7.1rem;
height: auto;
position: relative;
border: none;
}
.picture .input-number{
display: block;
width: 6.1rem;
height: 0.72rem;
border: none;
border-radius: 0.4rem 0 0.4rem 0;
padding: 0;
padding-left: 1rem;
font-size: 0.2rem;
background: url(../img/search.png) no-repeat;
background-size: 0.32rem 0.32rem;
background-position: 0.4rem 0.2rem;
box-shadow: 0 0 0.1rem #c2c2c2;
}
.picture #search{
display: block;
position: absolute;
width: 1.35rem;
height: 0.72rem;
border-radius: 0.4rem 0 0.4rem 0;
right: 0;
bottom: 0;
background: #1c1c20;
text-align: center;
line-height: 0.72rem;
color: #fff;
}
效果图:

总结:关于input、 button等布局以及box-shadow样式实例如下:

代码:
html:
<div>
body{
margin: 100px;
padding: 30px;
}
</div>
橙色为div
<div class="outer">
<div class="inner" >div display:block</div>
<button class="button">tag:button</button>
</div>
橙色为input
<div class="outer">
<input class="inner" value="input display:inline-block"/>
<!-- <div class="button" ></div> -->
<input class="button" value="input button"/>
</div>
橙色为input
<div class="outer">
<input class="inner" value="input display:inline-block"/>
<!-- <div class="button" ></div> -->
<div class="button" >div</div>
</div>
css:
body{
margin: 100px;
padding: 30px;
}
.outer{
width: 300px;
height: 100px;
border: 10px solid #ccc;
padding:;
margin-bottom:50px;
position: relative;
-webkit-box-shadow: 0 0 50px 10px pink;
-moz-box-shadow: 0 0 50px 10px pink;
box-shadow: 0 0 50px 10px pink;
}
.inner{
width: 300px;
height: 100px;
margin: 0 auto;
background: #f69f69;
-webkit-box-shadow: 0 0 50px green;
-moz-box-shadow: 0 0 50px green;
box-shadow: 0 0 50px green;
border: none;
padding:;
border: 0px red solid;
}
从例子中可以看出,box-shadow是不占用盒模型的空间的,是属于盒子的阴影,在副父元素overflow的属性下会被截断。
语法
box-shadow: h-shadow v-shadow blur spread color inset;
阴影颜色:此参数可选,如果不设定任何颜色时,浏览器会取默认色,但各浏览器默认色不一样,特别是在webkit内核下的safari和chrome浏览器将无色,也就是透明,建议不要省略此参数。
Box-shadow的浏览器支持情况
IE9+、Firefox 4、Chrome、Opera 以及 Safari 5.1.1 支持 box-shadow 属性。

我们在书写box-shadow的格式应该这样
//Firefox4.0-
-moz-box-shadow: 投影方式 X轴偏移量 Y轴偏移量 阴影模糊半径 阴影扩展半径 阴影颜色;
//Safari and Google
chrome10.0-
-webkit-box-shadow: 投影方式 X轴偏移量 Y轴偏移量 阴影模糊半径 阴影扩展半径 阴影颜色;
//Firefox4.0+ 、
Google chrome 10.0+ 、 Oprea10.5+ and IE9
box-shadow: 投影方式 X轴偏移量 Y轴偏移量 阴影模糊半径
阴影扩展半径 阴影颜色;
部分内容转载自:
原文: https://www.w3cplus.com/content/css3-box-shadow © w3cplus.com
Box-shadow制作漂亮的外阴影输入框的更多相关文章
- 常见input输入框 点击 发光白色外阴影 focus
先看看具体实现的效果 第一就是点击input 实现的效果 默认谷歌点击input是蓝色边框 去掉用outline:0; 实现效果用focus 默认状态的边框颜色一般较重 如border:1px s ...
- CSS3 box-shadow 效果大全(内阴影,外阴影,三边阴影,双边阴影,单边阴影,细线描边…)
/* offset-x | offset-y | color */ box-shadow: 60px -16px teal; /* offset-x | offset-y | blur-radius ...
- CSS3制作漂亮的照片墙
CSS3可以做动画大家肯定都是耳熟能详的了,但是大家有木有巧妙的利用这一个功能来制作一款漂亮的照片墙呢? 那么今天我们就利用CSS3动画这一特性来一起制作漂亮的照片墙吧! 第一部分:HTML 这里我们 ...
- css制作漂亮彩带导航条菜单
点击这里查看效果:http://keleyi.com/keleyi/phtml/divcss/17.htm 效果图: 以下是源代码: <!DOCTYPE html PUBLIC "-/ ...
- 使用 CSS3 & jQuery 制作漂亮的书签动画
今天的教程是关于创建使用 CSS 旋转变换和 JavaScript 制作动画书签效果.我们的想法是展现出样书状结构,使单一的色板或列表点击切换.当点击其中一项,我们就会旋转以显示所选择的项目. 在线演 ...
- css3 box-shadow阴影(外阴影与外发光)
基础说明: 外阴影:box-shadow: X轴 Y轴 Rpx color; 属性说明(顺序依次对应): 阴影的X轴(可以使用负值) 阴影的Y轴(可以使用负值) 阴影 ...
- box-shadow内阴影、外阴影
外阴影: box-shadow:X轴 Y轴 Rpx color; 属性说明(顺序依次对应):阴影的X轴(可以使用负值) 阴影的Y轴(可以使用负值) 阴影模糊值(大小) 阴影的颜色 内阴影: bo ...
- css3 box-shadow阴影(外阴影与外发光)讲解
基础说明: 外阴影:box-shadow: X轴 Y轴 Rpx color; 属性说明(顺序依次对应): 阴影的X轴(可以使用负值) 阴影的Y轴(可以使用负值) 阴影 ...
- 1分钟快速制作漂亮的H5本地记事本
大家好,以前给大家分享过一个五步骤制作精美的HTML5时钟的文章,点击回顾<五步教你制作漂亮精致的HTML时钟>,还有<一分钟教你如何实现唯美的文字描边>:今天给大家分享一个用 ...
随机推荐
- 输出变量的界值(int、float、long.....)
//整型.浮点型变量表示的关键字,并给出它们各自的界值 #include<iostream> #include<climits> //包含整型数据范围的头文件 #include ...
- django-rest-framework之 json web token方式完成用户认证
json web token的介绍:https://blog.csdn.net/kevin_lcq/article/details/74846723 1. 安装 $ pip install djang ...
- logback条件日志配置
logback支持条件日志配置,支持在测试环境和正式环境使用不同的参数启用不同的日志配置,从而避免手动修改日志配置文件.项目除了引入logback的包以外,还需要引入构件org.codehaus.ja ...
- 一、基础篇--1.2Java集合-HashMap死循环问题
为什么HashMap会出现死循环 首先,我们知道java的HashMap不是线程安全的.多线程下应该使用ConcurrentHashMap. HashMap底层是基于动态数组和单向链表(JDK1.7, ...
- When Database Sharding is Appropriate DATABASE SHARDING
w横切 http://www.agildata.com/database-sharding/ When Database Sharding is Appropriate Database Shardi ...
- Request.Params用法,后台接收httpget参数
使用Request.Params["id"]来获取参数是一种比较有效的途径. request.params其实是一个集合,它依次包括request.querystring.requ ...
- 二、Spring Boot 中maven中dependencies所有的jar包都报红,install报错(https://repo.maven.apache.org/maven2): Not authorized , ReasonPhrase:Authorizatio
问题一:现象:打开SpringBoot项目后,所有依赖包都报红色波浪线 1.install报错(https://repo.maven.apache.org/maven2): Not authorize ...
- java 抽取 word,pdf 的四种武器
转自:https://www.ibm.com/developerworks/cn/java/l-java-tips/ 感谢作者发布的文章 用 jacob 其实 jacob 是一个 bridag ...
- jsp部分
1,struts2下拉框,直接赋值.<s:select list="#{'':'---请选择---','0':'否','1':'是'}"listKey="key&q ...
- redis安装及遇到的坑-linux
获取Redis安装包“redis-4.0.8.tar.gz”,上传Linux服务器; 使用root用户解压: tar zxvf redis-4.0.8.tar.gz -C /usr/local/; 进 ...