位置: 编程技术 - 正文

css实现气泡框效果(实例加图解)(html气泡效果)

编辑:rootadmin
前提:气泡框或者提示框是网页很常见的,实现它的方式有很多,我们以前最常用的就是切图片 然后通过 "定位" 方式 定位到相应的位置,但是用这种方式维护很麻烦,比如设计师想改成另外一种或者另外一种颜色 那我们只有再次切图片等。下面我们来学习下使用html+css来实现这种效果!

如下效果:

and

我们可以来分析下:要实现这种效果 无外乎就是一个矩形和一个小三角形 然后三角形定位上去就可以了,那么我们怎么样通过css来制作小三角形呢?

一:首先我们来看看css border属性,当我们把一个div border-color设置成不同颜色时候,可以看到四边都成了矩形了。

<div class="demo"></div>.demo {width:px;height:px;border-width:px;border-style:solid;border-color:#CCC #F # #0C9;}

如图:

如果我们继续把div的宽度和高度设为0的话 那么四边会成了三角形了。

.demo{width:0; height:0; border-width:px; border-style:solid; border-color:#CCC #F # #0C9;}

但是IE6下 上下是三角形 左右是矩形框:如下:

通过实验发现当把div的font-size和line-height都设为0的时候,div的四边在IE6下都能形成完美的三角形:代码如下:

.demo{width:0; height:0; border-width:px; border-style:solid; border-color:#CCC #F # #0C9;line-height:0;font-size:0;}

很明白我们只需要一个三角形,那么我们只需要把其他三边颜色设置为透明或者设置为和背景颜色相同就可以制作出一个三角形出来了,将其他三边颜色设置为透明,即color的值为transparent,如果其他三边颜色跟页面背景一样,虽然视觉上只能看到一个三角,但背景颜色一旦改变,其他三边颜色也要随之改变。如下代码:

.demo{width:0; height:0; border-width:px; border-style:solid; border-color:#CCC transparent transparent transparent;line-height:0;font-size:0;}

但是在IE6下 又有问题了 IE6不支持透明 transparent 如下:

但通过实验发现把border-style设置为dashed后,IE6下其他三边就能透明了!如下:

还是上面的代码 改成如下:

.demo{width:0; height:0; border-width:px; border-style:solid dashed dashed dashed; border-color:#CCC transparent transparent transparent;line-height:0;font-size:0;}

现在我们已经可以模拟出一个小三角形了,那么下面我们可以利用矩形和三角形结合起来使用 做个demo来实现上面2个效果了!首先我们先设计一个矩形框 然后把小三角形定位到矩形框上来。如下图:

代码如下:

<div class="longen"><span></span>我是龙恩 我在气泡框内</div> .longen {position:relative;width:px;height:px;border:5px solid red;} .longen span{position:absolute;left:px;bottom:-px;border-width:px;border-style:solid dashed dashed; border-color:red transparent transparent;font-size:0; line-height:0;}

现在指示方向的三角形箭头是实心的,而我们想要的是空心的效果,我们再叠加一个同气泡框背景颜色一样的小三角,然后把这个叠加的小三角移动一下位置就能达到了。首先需要对HTML结构进行调整,如下图

代码如下:

<div class="longen"> <span></span> <em></em> 我是龙恩 我在气泡框内</div> .longen {position:relative;width:px;height:px;border:5px solid red;} .longen span{position:absolute;left:px;bottom:-px;border-width:px;border-style:solid dashed dashed; border-color:red transparent transparent;font-size:0; line-height:0;}.longen em{ position:absolute; bottom:-px; left:px;border-width:px;border-style:solid dashed dashed; border-color:#FFF transparent transparent;font-size:0; line-height:0;}

下面我们再来看看第二种 不规则的效果该怎么实现呢?

HTML代码和前面的一样:

<div class="longen"><div class="arrow"><em></em><span></span></div>我是龙恩 我在气泡框内</div>

css改成如下:

.longen {width:px; height:px;position:relative; background-color:red;margin:px auto 0;}

 重新定位下三角箭头:

.arrow{ position:absolute; width:px; height:px; left:-px; bottom:px;}

元素相邻的两边border-style值设为solid(显示),另两边设为transparent(不会显示)

.arrow *{position:absolute; border-style:dashed solid solid dashed; font-size:0; line-height:0; }

下面首先我们来模拟一个直角三角形,把一个元素的相邻两边color设为相同的值,另外两边颜色设为透明,即可得到一个直角:如下:

代码继续加上如下:

.arrow em{border-color:transparent #F #F transparent; border-width:px px;}

继续 把两个直角三角形重叠在一起就可以得到一个不规则三角形 代码如下:

.arrow span{ border-width:px px;border-color:transparent #FFF #FFF transparent; bottom:0;}

到此 不规则的图片已经制作完成了!

完整代码如下:

<div class="longen"> <div class="arrow"> <em></em> <span></span> </div> 我是龙恩 我在气泡框内</div>.longen {width:px; height:px;position:relative; background-color:red;margin:px auto 0;}.arrow{ position:absolute; width:px; height:px; left:-px; bottom:px;}.arrow *{position:absolute; border-style:dashed solid solid dashed; font-size:0; line-height:0; }.arrow em{border-color:transparent #F #F transparent; border-width:px px;} .arrow span{ border-width:px px;border-color:transparent #FFF #FFF transparent; bottom:0;}

二: 除了通过设置元素的border来模拟小三角之外,还可以用特殊字符来模拟,用特殊字符模拟小三角同样需要用到定位和重叠覆盖,只不过不需要调整border属性了。

先来看一个菱形“◆” ,它在页面中的代码是“&#”,需要注意的是页面编码需要设置为utf-8,在网页中可以把◆当作文字处理,可以通过调整font-size来它的大小、通过color来设置它的颜色。

hTML代码如下:

<div class="longen"> <div class="arrow"> <em>&#</em> <span>&#</span> </div> 我是龙恩 我在气泡框内</div>

先来设置最外层div的样式,得到一个矩形框:

代码如下:

.longen{ width:px; height:px;position:relative; border:5px solid red; margin:px auto 0;}

 接着定位箭头最外层容器div,便于观察可以先设置一个背景色 :

代码如下:

.arrow{ position:absolute; width:px; height:px; left:px; bottom:-px; background:#ccc;overflow:hidden;}

再对◆设置样式:

.arrow *{position:absolute; font-size:px; line-height:px; width:px; font-family:SimSun; font-style:normal; font-weight:normal; text-align:center; vertical-align:middle;}

图如下:

注意:为了◆主流浏览器中显示一致,需要清除浏览器的默认字体样式,特别注意这里字体的设置再分别修改em、span标签的字体颜色,并对这两个标签定位:代码如下:

.arrow em{ color:red; top:-px;}.arrow span{ color:#fff; top:-px;}

最终效果图还是和上面一样 如下:

完整代码如下:

<div class="longen"> <div class="arrow"> <em>&#</em> <span>&#</span> </div> 我是龙恩 我在气泡框内</div> .longen{ width:px; height:px;position:relative; border:5px solid red; margin:px auto 0;}.arrow{ position:absolute; width:px; height:px; left:px; bottom:-px;overflow:hidden;}.arrow *{position:absolute; font-size:px; line-height:px; width:px; font-family:SimSun; font-style:normal; font-weight:normal; text-align:center; vertical-align:middle;}.arrow em{ color:red; top:-px;}.arrow span{ color:#fff; top:-px;} 补充:以上方式实现小三角的过程中不可避免的增加了多余的标签,如果不要求所有浏览器中显示一致的话, 我们可以利用css3来实现这个小三角.<div class="longen"> css3气泡框</div>.longen{ width:px; height:px; border:5px solid #F; position:relative; background-color:#FFF; } .longen:before,.longen:after{ content:"";display:block; border-width:px; position:absolute; bottom:-px; left:px; border-style:solid dashed dashed; border-color:#F transparent transparent; font-size:0; line-height:0; } .longen:after{ bottom:-px; border-color:#FFF transparent transparent; }效果和上面一样。本人也是通过google的 自己研究下 做的demo 确实还不错 所以就分享出来了 如果分析的不清晰 请各位大牛多多指教!本人能力暂时有限!!

推荐整理分享css实现气泡框效果(实例加图解)(html气泡效果),希望有所帮助,仅作参考,欢迎阅读内容。

css实现气泡框效果(实例加图解)(html气泡效果)

文章相关热门搜索词:css 聊天气泡,css气泡样式,css气泡对话框,css实现气泡框上箭头,css气泡样式,css实现气泡框上箭头,css实现气泡框效果的方法,css气泡样式,内容如对您有帮助,希望把文章链接给更多的朋友!

纯CSS绘制三角形(各种角度) 我们的网页因为CSS而呈现千变万化的风格。这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果。特别是随

HTML meat作用 meta标签用于网页的head与/head中,meta标签的用处很多。meta的属性有两种:name和http-equiv。name属性主要用于描述网页,对应于content(网页内容),以便于

CSS绘制五角星 1六角形#star-six{width:0;height:0;border-left:pxsolidtransparent;border-right:pxsolidtransparent;border-bottom:pxsolidred;position:relative;}#star-six:after{width:0;height:0;border-left:px

标签: html气泡效果

本文链接地址:https://www.jiuchutong.com/biancheng/372082.html 转载请保留说明!

上一篇:html的基本使用(HTML标签解释)(html用法)

下一篇:纯CSS绘制三角形(各种角度)(如何用css画三角形)

  • 企业投资收益要开发票吗
  • 公司的车不处理违章可以吗
  • 小规模纳税人开票税率
  • 更换税控盘后原发票如何导入旧盘开票税局
  • 过了纳税期没有申报
  • 增值税抵扣可以跨月吗
  • 单位边际贡献和边际贡献一样吗
  • 开票资料都包括什么内容
  • 企业合并的相关税费计入哪里
  • 股权变更怎么收费
  • 结转本月收入类账户到本年利润会计分录
  • 准予抵扣的消费税
  • 股权计税成本如何计算?
  • 个体工商年报怎么弄
  • 加工生产产品的地方 用两个字形容
  • 机票行业一定要开发票吗?
  • 发票选择确认平台怎么选
  • 企业应缴的教育费附加税是多少?
  • 税务局开票需要带什么材料
  • 2019年煤炭
  • 企业所得税季报填报说明
  • 低税负销售激励策略的设计与案例!
  • 应收账款未计提坏账,但是确实收不回来
  • 认缴实收资本印花税什么时候交
  • 原材料质量问题退回
  • 企业无形资产包括
  • 如何将旧版本软件卸载
  • 内部应收账款计算公式
  • php 签名算法
  • 企业所得税申报表
  • php调用sql
  • php中面向对象
  • 销售需要安装的商品,只能在安装和检验完毕后确认收入
  • 下列关于企业发生的税费说法正确的是
  • 政府搬迁补偿款不够建房怎么办
  • 房贷每月利息如何算
  • mediacachefiles什么意思
  • PHP:imagepsloadfont()的用法_GD库图像处理函数
  • 公司支付员工工伤医疗费怎么入账
  • 发票开错的常见情况和处理办法?
  • php-xml
  • 医院产生的相关法律法规
  • phpsql查询
  • 行政单位捐赠会计分录怎么做的
  • php深度分析
  • vue全家桶教程
  • 其他应收款借贷方表示什么意思
  • 商业企业会计如何记账
  • sqlserver uuid怎么获取
  • 研发费用明细科目怎么填
  • 公司租赁职工车辆账务处理
  • 上市公司限制性股票个人所得税
  • 坏帐损失的税务处理
  • 财政补助收入属于资产类还是负债类
  • 公司办理宽带套餐合法吗
  • 投资别人的公司叫什么
  • 核销预收账款是否需要计提增值税
  • sql转换
  • windowsxpsp3是什么版
  • win7开机黑屏只有一个鼠标箭头
  • 英雄联盟windows10
  • 简单理解贴现
  • javascript 高级
  • 根据安全生产法的规定,生产经营单位
  • Android之Volley
  • 分享一下相亲时碰见过哪些奇葩事
  • python例题讲解
  • Android使用HttpURLConnection和HttpClient请求服务器数据
  • js文字滚动代码
  • jquery如何做登录
  • 增值税申报表如何填报
  • 中国税务局河北省税务局官网
  • 国税干部任前谈心谈话
  • 申报印花税显示未维护营行业信息
  • 加工销售如何做账
  • 缴纳了车辆购置税能退吗
  • 国网四川电力客户电话号码
  • 国税网查发票真伪
  • 代理记账公司成本怎样结转的
  • 国家税务总局每家公司都可以注册吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设