浅析新浪微博:以css实现的小三角提示框

浅析新浪微博:以css实现的小三角提示框

分析新浪微博就会发现一个有趣的带小三角提示框。先来看下效果图:


浅析新浪微博:以css实现的小三角提示框

 
仔细查看代码才发现,并不是使用传统做法以图片的background属性实现,而是以两个”◆”菱形字符实现,这个菱形支持
编码有
GBK,gb312,UTF-8等,也可通过转义字符&#9670输入。
 
浅析新浪微博:以css实现的小三角提示框
实现的原理是:em标签里得◆菱形符号作为外三角边框,而<span>标签里的◆菱形符号正好填充em,当两个菱形符号重叠时,只需调整span里的菱形往下移动1px,那么就能呈现1px的向上三角边框。
浅析新浪微博:以css实现的小三角提示框
由于新浪微博的特性,代码并不容易提取。按照它的思路,我只好自己写一次。
下面是html,为了统一把em标签换成span标签。
<div class="comment"> <div class="arrow"> <span class="out">◆</span> <span class="inside">◆</span> </div> <p>带小三角的提示框</p> </div>

css代码:

.comment{padding:10px;background:#fff; border-radius:3px;border:1px solid #e1e4e5;position:relative } .arrow {_display:none;position:absolute;top:-9px;left:20px;overflow:hidden;display:block; } .arrow .out{display:inline-block;overflow:hidden;color:#e1e4e5; } .arrow .inside{top:1px;color:#fbfbfb;left:0px;position:absolute; }

为什么◆要定义字体?其目的通过字体属性把它放大,也可通过span加上字体加粗font-weight:bold属性再增大三角形边框。明确了方法与原理,我么就可以在不同方向,不同位置放置三角形了。

浅析新浪微博:以css实现的小三角提示框
以上所写代码能够兼容目前所有浏览器,包括IE6。貌似新浪微博的好像不兼容IE6哦,小得瑟一下,哈哈~~~~~~~~

转载于:https://my.oschina.net/collins401/blog/57869

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110405.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java中数组的下标的数据类型是_java返回数组下标

    java中数组的下标的数据类型是_java返回数组下标packagepractice;publicclassArrayElementsAddIndices{ publicstaticvoidmain(String[]args){ intarray[]={5,4,3,2,1,6,7,8,9}; System.out.println(“原数组中的元素:”); for(inti=0;i<array.length;i++){ System.out.print(array[i

    2022年10月11日
    3
  • Linux下的C编程实战

    Linux下的C编程实战(一)――开发平台搭建1.引言Linux操作系统在服务器领域的应用和普及已经有较长的历史,这源于它的开源特点以及其超越Windows的安全性和稳定性。而近年来,Linu

    2021年12月25日
    41
  • java跨域访问四种方式_java如何解决跨域问题

    java跨域访问四种方式_java如何解决跨域问题什么是跨域问题出于安全考虑,对于Ajax请求,浏览器会发起同源检查。所谓的同源是指发出请求的网页与请求的服务器对应的通讯协议、域名、端口完全一致。如果发起请求的网页和Ajax请求的目标地址不同源就会出现所谓的跨域问题而无法正确访问。跨域问题的解决方案Cross(跨域资源共享方案)CORS是一个W3C标准,全称是”跨域资源共享”(Cross-originresourcesharing).它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。具.

    2022年8月24日
    5
  • socket的sigpipe信号[通俗易懂]

    socket的sigpipe信号[通俗易懂]对一个对端已经关闭的socket调用两次write,第一次将会收到队端的RST响应,第二次将会生成SIGPIPE信号,该信号默认结束进程.具体的分析可以结合TCP的”四次握手”关闭.TCP是全双工的信道,可以看作两条单工信道,TCP连接两端的两个端点各负责一条.当对端调用close时,虽然本意是关闭整个两条信道,但本端只是收到FIN包.按照TCP协议的语义,表示对端只是关闭…

    2022年5月30日
    50
  • 将十进制小数转化为二进制小数的方法[通俗易懂]

    将十进制小数转化为二进制小数的方法[通俗易懂]十进制小数→二进制小数:(1)把十进制小数乘以2,得到积,把积的整数部分提出;(2)再用所得积的小数部分乘以2,得到积,把积的整数部分提出;(3)重复步骤2;(4)乘以2过程中提出的各个整数部分组成转换后的二进制小数。权的确定规则:最先提出的整数是二进制小数的最高位。看个例子就明白le:37.8125(十进制)的运算分为整数部分和小数部分:  整数部分的结…

    2022年9月24日
    3
  • 基于python的电影推荐系统_复仇者联盟4终局之战纸牌

    基于python的电影推荐系统_复仇者联盟4终局之战纸牌喜欢看电影的朋友都知道,五一节之前上映了一部漫威号称十年布局的超级大片,据说老一代的英雄们有很多就要退出历史的舞台了,今天我们不是聊这一部电影的内容怎样,情节怎样,而是想基于爬虫来对豆瓣和猫眼电影两个网站中的影评数据进行采集,之后有时间的话会基于采集到的数据来进行文本分析。好了,其他的话就不多说了,详细的代码实现在之前的文章里面也已经给出来了,这里简单贴一下爬取到的数据…

    2022年9月13日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号