整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

DIV/CSS] css3在页面中插入内容

.使用选择器来插入内容

h2:before{

content:"前缀";

}

h2:after{

content:"后缀";

}

B.指定个别的元素不进行插入

h2.sample:before{

content:none;

}

2. 插入图像

A.在标题前插入图像文件

h2:before{

content:url(anwy.jpg);

}

B.将alt属性的值作为图像的标题来显示(用不了)

img:after{

content:attr(alt);

display:block;

text-align:center;

margin-top:5px;

font-size:11px;

font-weight:bold;

color:black;

}

3. 插入编号

A.多个标题前加入连续编号

div:before{

content:counter(divCounter);

}

div{

counter-increment:divCounter;

}

B.在项目符号中追加文字

div:before{

content:"第"counter(divCounter)"段";

}

C.指定编号样式、种类

div:before{

content:counter(divCounter,upper-alpha)'.';

color:blue;

font-size:16px;

}

D.编号嵌套

div:before{

content:counter(divCounter,upper-alpha)'.';

color:blue;

font-size:16px;

}

div{

counter-increment:divCounter;

counter-reset:subDivCounter;

}

p:before{

content:counter(subDivCounter)'.';

margin-left:15px;

font-size:12px;

}

p{

counter-increment:subDivCounter;

}

E.字符串两边添加文字嵌套符号

h3:before{

content: open-quote;

}

h3:after{

content: close-quote;

}

h3{

quotes:"【""】";

}

disc 点| circle圆圈 | square正方形 | decimal数字 | decimal-leading-zero 十进制数| lower-roman 小写罗马文字| upper-roman 大写罗马文字| lower-greek小写希腊字母 | lower-latin小写拉丁文 | upper-latin 大写拉丁文| armenian亚美尼亚数字 | georgian乔治亚数字 | lower-alpha小写英文字母 | upper-alpha大写英文字母 | none无 | inherit继承


在很多web或者app页面中,我们可以看到各种各样的输入框,从外观上看它们可以直观的看做是input元素,但是实际上并非如此。我们可以通过别的标签去模拟input标签的效果,今天我们就来看看如何使用div标签模拟input标签的效果。

div+css

页面效果

这里我们用ofo的主页面作为例子,在点击下面数字的时候,数字的内容会出现在输入框内,这个输入框就是用div模拟实现的。

当然页面内容是静态的,只是一个简单的html,我们来看下实现后的效果。如果感兴趣的可以直接去github上去看看,源码地址:

https://github.com/zhouxiongking/article-pages/tree/master/articles/divToInput

实现效果

显示框

这里我们定义一个显示内容的div来模拟input,其css样式如下。

css样式

:before

我们使用:before伪元素来装载输入的内容,在:before元素中使用content属性来动态的元素的属性值。

使用:before伪元素

闪烁动作

在input标签中,如果input元素获取焦点后,在input元素内会有光标在闪烁,这个效果我们可以通过:after伪元素来实现。

我们会用到动画animation的知识,首先定义一个动画效果,利用opacity属性来控制显示与不显示,从而造成闪烁效果。

定义闪烁动作

然后在:after伪元素中使用。

:after伪元素

Javascript控制输入

在设置好div效果后,需要在点击下面的数字时,将值显示在div中,这就需要用到Javascript去控制。

首先获取页面上所有存在动作的元素。

获取元素

然后给数字和删除元素分别添加对应的事件。

元素绑定事件

绑定事件后,在点击数字时会将值动态的显示在div中,在删除时也会相应删掉最后一个添加的元素值。

页面设计

对于整个页面的设计,采用了header,div和footer的布局。

header和div的html部分代码如下。

header与div

相应的footer部分代码如下,其主要采用的是table布局,相对简单实用。

footer部分

至此,整个页面的实现就讲解完毕了,中间有很多的css样式部分我并没有放出来,感兴趣的可以自行去github上clone下来看看。

总结

今天这篇文章主要以ofo主页面实现来讲解了一下如何使用div来模拟input的效果,你有收获吗

篇文章我们要说的就是这html中运用也是使用最多的标签div,我们接下来重点介绍下div的作用,以及如何给div合理的命名,让代码结构更加清晰明了。

1)认识div的作用

使用语法:<div>元素内容</div>

在网页制作过程过中,我们可以把一些独立的逻辑部分划分出来,放在一个<div>标签中,这个<div>标签的作用就相当于一个容器。容器的作用呢就是可以把一个逻辑部分包裹起来存到元素内部。

确定逻辑部分:

什么是逻辑部分?它是页面上相互关联的一组元素。如网页中的独立的栏目版块,就是一个典型的逻辑部分。比如网页中的头部模块、banner模块、新闻列表模块等,这样的部分就可以使用div标签作为容器存放进去。如下图所示:图中用红色边框标出的部分就是一个逻辑部分,就可以使用<div>标签作为容器。

2)合理的命名div

第一条我们讲到把一些标签放进<div>里,划分出一个独立的逻辑部分。为了使逻辑更加清晰,我们可以为这一个独立的逻辑部分设置一个名称,用id属性来为<div>提供唯一的名称,这个就像我们每个人都有一个身份证号,这个身份证号是唯一标识我们的身份的,也是必须唯一的。对于重复的逻辑部分我们用class属性来为div添加一个通用名称,class不唯一可以重复使用。

上边这张图片左边是没有使用div的排版,我们可以看到整个页面标签有很多,我们很难区分哪一块是一个部分的,哪一块是属于哪个区域的,但是右边这张图片,我们使用div包括了之后我们就可以很清晰的了解到,每一个模块属于哪部分,结构排版也显得很明了,便于我们后期的修改和维护。


到这本节课的内容我们就说完了,快点自己动手来试试:给网页的独立的版块添加“标记”。

附赠一句经典语录:将来的你一定会感谢现在奋斗的自己!喜欢我的文章的小伙伴记得关注一下哦,每天将为你更新最新知识。