css3常用方法及问题解决

目录导航

  • 文本换行
  • 阴影设置
  • 垂直居中
  • css三角

一、常用样式方法

1、文本换行

  • 普通换行隐藏省略三个小点
width: 480px;/* 限制宽度*/
overflow: hidden;/* 超出省略*/
white-space: nowrap;/* 强制不换行 */
text-overflow: ellipsis;/* 用三个省略号代替 */

效果图如下
在这里插入图片描述

  • 文本多行隐藏
/* 不建议设置高度*/
	width: 480px;/* 限制宽度*/
	display: -webkit-box !important;/* 设置专属的盒子类型*/
	overflow: hidden;/* 超出省略*/
	-webkit-line-clamp: 2;/* 行数设定*/
	-webkit-box-orient: vertical;/* 设置行的方向*/

效果图如下
在这里插入图片描述

  • 若是设置英文失效的话建议加一个属性
word-break: break-all; /* 可以强行截断英文单词,达到词内换行效果。*/

2、阴影设置

外部阴影第一个值左右的长度(负值->左边)
第二个值上下(负值->上边)
第三个值模糊值(越大越模糊)不能为负默认0就很锐利、像边框
第四个值阴影长度值,默认为0,正数阴影扩大、负数阴影内缩(不常用)
第五个值表示颜色,默认则和浏览器相关
内部阴影左右上下取值相反

	.r_down {
		box-shadow: 10px 10px 5px blue;/* 右下 */
	}

	.r_up {
		box-shadow: 10px -10px 10px blue;/* 右上 */
	}

	.l_down {
		box-shadow: -10px 10px 15px;/* 浏览器默认颜色 */
	}

	.l_up {
		box-shadow: -10px -10px blue;/* 左上 */
	}

	.in_r_down {
		box-shadow: 10px 10px 10px inset blue;/* 左上 */
	}

效果图
在这里插入图片描述

3、垂直居中

1、定位方式

/*1)如果父级不设置定高top失效*/
width:500px;
height: 500px;
background-color: #123456;
position:absolute;
/*第1种方式*/
left:50%;
top:50%;
transform:translate(-50%,-50%);/*transform有时候会失效,可能是兼容问题使用margin方式也可以*/
/*margin:-250px 0 0 -250px;x、y方向上都减去一半*/
/*第2种方式*/
top:0;
left:0;
right: 0;
bottom: 0;
margin:auto;

2、flex布局设置

/*父级设置、高度必须*/
height:689px;
display:flex;
justify-content: center;
align-items: center;

3、计算方式

/*上下居中用定值,左右居中用计算*/
margin:95px calc((100% - 500px)/2);

4、css三角

通过border的属性去设置三角
两种方式(设置透明, 隐藏其中三个三角形)

 .sanjiao{
	width:0px;
	height:0px;
	border: 20px solid;
	border-color:transparent transparent transparent #ef4848;
}

或者直接设置透明边框再单独设置某个方向的三角

.snajiao{
	width:0px;
	height:0px;
	border: 20px solid transparent;
	border-left:50px solid #ef4848;
}

效果图:
在这里插入图片描述

二、经常遇到的问题

1、相邻元素之间有缝隙

  • margin值和padding值度为0,但是两个相连个元素之间就是有缝隙。
    原因:display:inline-block之后,元素间有换行导致的问题
    解决:设置margin的负值或者是将换行去掉即可。

三、总结

不断更新补充,有更好的解决方式欢迎补充评论!!

发布了11 篇原创文章 · 获赞 0 · 访问量 463

猜你喜欢

转载自blog.csdn.net/weixin_44258964/article/details/102975925