栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何仅在元素的一侧创建阴影?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何仅在元素的一侧创建阴影?

更新4

与更新3相同,但具有现代的CSS(=较少的规则),因此不需要在伪元素上进行特殊定位。

#box {    background-color: #3D6AA2;    width: 160px;    height: 90px;    position: absolute;    top: calc(10% - 10px);    left: calc(50% - 80px);}.box-shadow:after {    content:"";    position:absolute;    width:100%;    bottom:1px;    z-index:-1;    transform:scale(.9);    box-shadow: 0px 0px 8px 2px #000000;}<div id="box" ></div>

更新3

我以前所有的答案都一直在使用额外的标记来创建此效果,而这并不是必需的。我认为这是一种
清洁的解决方案…唯一的窍门是使用值来获得阴影的正确位置以及阴影的正确强度/不透明度。

HTML

<div id="box" ></div>

CSS

#box {    background-color: #3D6AA2;    width: 160px;    height: 90px;    margin-top: -45px;    margin-left: -80px;    position: absolute;    top: 50%;    left: 50%;}.box-shadow:after {    content: "";    width: 150px;    height: 1px;    margin-top: 88px;    margin-left: -75px;    display: block;    position: absolute;    left: 50%;    z-index: -1;    -webkit-box-shadow: 0px 0px 8px 2px #000000;       -moz-box-shadow: 0px 0px 8px 2px #000000; box-shadow: 0px 0px 8px 2px #000000;}

更新2

显然,您可以使用框阴影CSS的一个额外参数来完成此操作,正如其他所有人所指出的那样。这是演示:

CSS

-webkit-box-shadow: 0 4px 4px -2px #000000;   -moz-box-shadow: 0 4px 4px -2px #000000;        box-shadow: 0 4px 4px -2px #000000;

这将是一个更好的解决方案。添加的额外参数描述为:

第四长度是展开距离。正值会使阴影形状沿所有方向扩展指定的半径。负值会使阴影形状收缩。

更新

我所做的是创建一个“阴影元素”,该阴影元素将隐藏在您想要具有阴影的实际元素后面。我使“阴影元素”的宽度比实际元素的宽度小2倍于您指定的阴影。然后我将其正确对齐。

HTML

<div id="wrapper">    <div id="element"></div>    <div id="shadow"></div></div>

CSS

#wrapper {    width: 84px;    position: relative;}#element {    background-color: #3D668F;    height: 54px;    width: 100%;    position: relative;    z-index: 10;}#shadow {    background-color: #3D668F;    height: 8px;    width: 80px;    margin-left: -40px;    position: absolute;    bottom: 0px;    left: 50%;    z-index: 5;    -webkit-box-shadow: 0px 2px 4px #000000;       -moz-box-shadow: 0px 2px 4px #000000; box-shadow: 0px 2px 4px #000000;}

原始答案

是的,您可以使用提供的相同语法来执行此操作。第一个值控制水平位置,第二个值控制垂直位置。因此,只需将第一个值设置为第二个值,

0px
然后将第二个设置为您想要的任何偏移量,如下所示:

-webkit-box-shadow: 0px 5px #000000;   -moz-box-shadow: 0px 5px #000000;        box-shadow: 0px 5px #000000;

我希望这有帮助。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/398783.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号