CSS实例教程:使用伪元素制作时尚焦点图相框

2016-02-17 01:17 4 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的CSS实例教程:使用伪元素制作时尚焦点图相框教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 平面设计 】

在css标签中有这样子的标签div:beforediv:after,对于before、after来说有部分人是相当陌生的,那么这两个标签是什么呢?有什么用处?
:befor、:after是CSS的伪元素,什么是伪元素呢?伪元素用于向某些选择器设置特殊效果。
我们用CSS手册可以查询到其基本的用法:

E:before/E::before 设置在对象前(依据对象树的逻辑结构)发生的内容。用来和content属性一起使用E:after/E::after 设置在对象后(依据对象树的逻辑结构)发生的内容。用来和content属性一起使用Ie6-7 不支持

既然说到了before、after,那么我们也要大概的了解下content,content用来和:after:before伪元素一起使用,在对象前或后显示内容。基本的用法如下:

div:after{content:'任意字符串';}

现在我们大概知道before和after的大概用法了,那么我们就可以在元素的内容之前或者之后插入新内容。而插入的内容我们也可以用css样式来加以控制和美化。也许在平常中这样子的标签用处不大,但是存在即是真理,哈哈,肯定有他的妙用之处,今天就来看看利用before和after制作的一个创意的时尚焦点图相框,以后制作这种边框线的时候我们可以完全抛弃图片的做法,而且做出来的非常的精美。不信,就请先看看效果demo吧:

查看预览下载附件

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/pmsj/)制作思路以及方法:

1、 在图片层加多一层div,设置1像素的边框线,边框线有上下左右四条边框,而我们想要的只是每两条边框线组成的类似小三角形的形状,那么我们只要把四条边框线的中间部分去掉,那不就实现了我们的效果。那我们应该怎么把四条边框线中间部分去掉?或者用什么东西把他盖住,不让他显示出来?解决办法就是,我们知道before和after伪元素可以在元素之前或者之后添加新的内容,那我们就利用这两个伪元素来盖住四条边框线的中间部分。
2、 我们先去掉左右两边的边框线,在边框层,利用before伪元素,使用css样式的定位,设置白色边框,为什么要白色的边框呢?因为要把之前的左右边框中间部分遮掉,颜色设置成和背景色(本例的背景为白色背景)一致,这样子看起来就相当于中间部分被裁剪掉了。
3、我们继续去掉上下两条边框线,方法同上,利用after伪元素,使用css样式的定位,设置为白色边框,遮掉上下边框线的中间部分。这样子一来,基本的形状就出现了
4、美化步骤,调整我们的细节,边框线调整为虚线。
CSS实例教程:使用伪元素制作时尚焦点图相框,PS教程,图老师教程网
了解了基本的思路和方法,是不是很简单呢?那我们就开始动手写代码吧。

HTML代码:
div class="content"ul  lia href="http://www.jiawin.com" target="_blank"img src="jiawin_1.jpg" /  p class="focus"/p/a/li  lia href="http://www.jiawin.com" target="_blank"img src="jiawin_2.jpg" /  p class="focus"/p/a/li  lia href="http://www.jiawin.com" target="_blank"img src="jiawin_3.jpg" /  p class="focus"/p/a/li  li id="noborder"a href="http://www.jiawin.com" target="_blank"img src="jiawin_4.jpg" /  p class="focus"/p/a/li/ul/div
CSS样式代码
.content {width:788px; margin:auto; height:auto; overflow:hidden; padding:30px; }.content ul li {float:left; height:176px; border-right:1px solid #DDDDDD; position:relative; padding:10px;}.focus {background:rgba(250,250,250,0.25); width:174px; height:174px; border:1px dashed #666; position:absolute; left:10px; top:10px; display:none;}.focus:before {width:174px; height:134px; border-left:1px solid #fff; border-right:1px solid #fff; content:''; position:absolute; left:-1px; top:20px;}.focus:after {width:134px; height:174px; border-top:1px solid #fff; border-bottom:1px solid #fff; content:''; position:absolute; top:-1px; left:20px;}.content ul li:hover .focus {display:block;}#noborder {border-right:0 none;}

通过这个例子是不是很方便的把这个效果做出来了呢?而且看看我们的代码,是不是很简洁呢!哈哈或许还有更好的方法来实现,我们可以一起探讨。我个人感觉其实div+css是很好的一门很容易手上但是功能性很强的技术,而且他很好玩很有趣。利用你的奇思妙想, 你可以做出各种意想不到的效果。期待你的作品哦。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/pmsj/)

查看预览下载附件

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/pmsj/)

来源:https://www.tulaoshi.com/n/20160217/1577190.html

延伸阅读
标签: Web开发
伪元素吸附在选择上和pseudo classes伪类很像,像这样selector:pseudoelement{property: value;}。有四种方式。 First letters and First lines 首字母和首行 first-letter伪元素作用到元素的第一个字母,first-line作用到元素的顶行。你可以,例如为段落创建一个drop caps和首行加粗。 p:fir...
标签: Web开发
CSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现在已经为大多数的浏览器所支持,成为网页设计必不可少的工具之一。使用CSS能够简化网页的格式代码,加快下载显示的速度,也减少了需要上传的代码数量,大大减少了重复劳动的工作量。尤其是当你面对的是有数百个网页的站点时,CSS简直象是神对我们的恩赐! 前言 ...
标签: Web开发
十二、控制BOX的样式 样式表规定了一个容器BOX,它将要储存一个对象的所有可操作的样式。包括了对象本身、边框空白、对象边框、对象间隙四个方面。 为了大家更好地理解这些属性的意义,以及互相之间的关系,请看下面这个图示: 1.边框空白(MARGIN) 如图所示,位于BOX模型的最外层,包括四项属性。 格式分别如...
标签: Web开发
如何用CSS定义虚线?在CSS中定义虚线一般有两种方法:一种是定义DIV的CSS样式,另一种是通过hr的CSS样式实现。 我们首先需要了解,关于线条的CSS的两个样式: dotted : 在MAC平台上IE4+与WINDOWS和UNIX平台上IE5.5+为点线。否则为实线 dashed : 在MAC平台上IE4+与WINDOWS和UNIX平台上IE5.5+为虚线。否则为实线 水平线条,我们可以用hr...
标签: Web开发
嗯,你可以说我很无聊。 最近疯狂加班,今天才得以有时间搞一个CSS的像素图来消遣休息下。 先看效果 : 运行代码框 !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"html xmlns="http://www.w3.org/1999/xhtml"headmeta http-...

经验教程

976

收藏

7
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部