当前位置:首页 > 前端 > 正文内容

简易CSS3仿照微信对话框

Z先生9年前 (2016-12-30)前端5896

惯例,直接上代码

HTML代码:

<div class="say-box say-left">
	<div class="say-avatar">
		<img src="头像" />
	</div>
	<div class="say-body">
		<div class="say-userinfo">
			<span class="say-time">2016-12-33</span> 头像在左
		</div>
		<div class="say-content">
			<div class="say-arrow"></div>
			<div class="say-message">这就是我说的内容啦</div>
		</div>
	</div>
</div>
<div class="say-box say-right">
	<div class="say-avatar">
		<img src="头像" />
	</div>
	<div class="say-body">
		<div class="say-userinfo">
			<span class="say-time">2016-12-33</span> 头像在右
		</div>
		<div class="say-content">
			<div class="say-arrow"></div>
			<div class="say-message">这就是我说的内容啦</div>
		</div>
	</div>
</div>

CSS代码:

/*对话框*/
.say-box {
	padding: 10px 20px;
}

.say-box .say-avatar {
	display: block;
	width: 60px;
	height: 60px;
}

.say-box .say-avatar img {
	width: 60px;
	height: 60px;
	border-radius: 3px;
}

.say-box .say-body .say-userinfo {
	color: #555;
}

.say-box .say-body .say-userinfo .say-time {
	color: #777;
}

.say-box .say-body .say-content {
	position: relative;
	width: 100%;
	height: auto;
	border-radius: 5px;
}

.say-box .say-body .say-content .say-message {
	padding: 10px;
}

.say-box .say-body .say-content .say-arrow {
	position: absolute;
	top: 5px;
	width: 0;
	height: 0;
	font-size: 0;
	border: solid 8px;
}

/*左侧样式,颜色*/
.say-box.say-left .say-avatar {
	float: left;
}

.say-box.say-left .say-body {
	margin-left: 80px;
}

.say-box.say-left .say-body .say-userinfo {
	text-align: left;
}

.say-box.say-left .say-body .say-userinfo .say-time {
	float: right;
}

.say-box.say-left .say-body .say-content {
	background: #f8f8f8;
}

.say-box.say-left .say-body .say-arrow {
	left: -16px;
	border-color: rgba(0, 0, 0, 0) #f8f8f8 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
}

/*右侧样式颜色*/
.say-box.say-right .say-avatar {
	float: right;
}

.say-box.say-right .say-body {
	margin-right: 80px;
}

.say-box.say-right .say-body .say-userinfo {
	text-align: right;
}

.say-box.say-right .say-body .say-userinfo .say-time {
	float: left;
}

.say-box.say-right .say-body .say-content {
	background: #1AAD19;
	color: #fff;
}

.say-box.say-right .say-body .say-arrow {
	right: -16px;
	border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #1AAD19;
}


分享给朋友:

相关文章

小程序二维码传参处理&UNIAPP H5传参兼容处理

首先小程序生成二维码,我这里调用的接口是:getUnlimited,我传递的参数是:invite=10001接着就是小程序中处理,如果直接扫二维码在App.vue的onLaunch中,使用decode...

VUE打包时from UglifyJs Unexpected token: punc (()错误解决方案

归其原因是因为缺少ES2015的语法解析。因此进行如下2步操作即可解决问题:1、安装babel-preset-es2015npm install babel-preset-es20...

npm 更新模块

npm update只能按照package.json中标注的版本号进行更新,升级后不会修改package.json中的版本号,需要自己手动修改,比较麻烦。npm-check-updates 升级插件升...

微信html链接小程序原始写法(暂未测试)

微信html链接小程序原始写法(暂未测试)

无意间发现了微信的这个链接,这几天比较忙,暂时还没有测试,等空了再测试一下。<a class="weapp_text_link"   &nbs...

js获取指定文件的路径

获取指定js文件的路径var src = '/static/js/demo.js'; var path = src.sub...

js中获取当前url路径

网上转的,用的时候整理// 返回 web 主机的域名,如:http://127.0.0.1:8080/testdemo/test.html?id=1&name=t...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。
请先 登录 再评论,若不是会员请先 注册