CSS入门零基础教程(十四)

84 阅读4分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第30天,点击查看活动详情

嗨,大家好,我是异星球的小怪同志

一个想法有点乱七八糟的小怪

如果觉得对你有帮助,请支持一波。

希望未来可以一起学习交流。

一、CSS三角

网页中常见一些三角形,使用 CSS 直接画出来就可以,不必做成图片或者字体图标。

一张图, 你就知道 CSS 三角是怎么来的了, 做法如下:

div { 
width: 0;
height: 0;
line-height: 0;
font-size: 0;
border: 50px solid transparent;
border-left-color: pink; 
}

二、什么是界面样式

所谓的界面样式,就是更改一些用户操作样式,以便提高更好的用户体验。

(1)更改用户的鼠标样式

鼠标样式 cursor

li {cursor: pointer; }

设置或检索在对象上移动的鼠标指针采用何种系统预定义的光标形状。

(2)表单轮廓

轮廓线 outline

给表单添加 outline: 0; 或者 outline: none; 样式之后,就可以去掉默认的蓝色边框。

input {outline: none; }

(3)防止表单域拖拽

防止拖拽文本域 resize

实际开发中,我们文本域右下角是不可以拖拽的。

textarea{ resize: none;}

三、vertical-align 属性应用

CSS 的 vertical-align 属性使用场景: 经常用于设置图片或者表单(行内块元素)和文字垂直对齐。

官方解释: 用于设置一个元素的垂直对齐方式,但是它只针对于行内元素或者行内块元素有效。

语法:

vertical-align : baseline | top | middle | bottom

1.图片、表单和文字对齐

图片、表单都属于行内块元素,默认的 vertical-align 是基线对齐。

此时可以给图片、表单这些行内块元素的 vertical-align 属性设置为 middle 就可以让文字和图片垂直 居中对齐了。

2.解决图片底部默认空白缝隙问题

bug:图片底侧会有一个空白缝隙,原因是行内块元素会和文字的基线对齐。

主要解决方法有两种:

(1) 给图片添加 vertical-align:middle | top| bottom 等。 (提倡使用的)

(2) 把图片转换为块级元素 display: block;

四、溢出的文字省略号显示

  1. 单行文本溢出显示省略号--必须满足三个条件

(1) 先强制一行内显示文本( 默认 normal 自动换行)

(2)超出的部分隐藏

(3)文字用省略号替代超出的部分

  1. 多行文本溢出显示省略号

多行文本溢出显示省略号,有较大兼容性问题, 适用于webKit浏览器或移动端(移动端大部分是webkit内核)

更推荐让后台人员来做这个效果,因为后台人员可以设置显示多少个字,操作更简单。

五、常见布局技巧

巧妙利用一个技术更快更好的布局:

1.margin负值的运用

(1)让每个盒子margin 往左侧移动 -1px 正好压住相邻盒子边框

(2)鼠标经过某个盒子的时候,提高当前盒子的层级即可(如果没有有定位,则加相对定位(保留位置),如 果有定位,则加z-index)

2.文字围绕浮动元素

3.行内块的巧妙运用

页码在页面中间显示:

(1) 把这些链接盒子转换为行内块, 之后给父级指定 text-align:center;

(2) 利用行内块元素中间有缝隙,并且给父级添加 text-align:center; 行内块元素会水平会居中

4.CSS三角强化

六、CSS初始化

不同浏览器对有些标签的默认值是不同的,为了消除不同浏览器对HTML文本呈现的差异,照顾浏览器的兼容,我们需要对CSS 初始化

简单理解: CSS初始化是指重设浏览器的样式。 (也称为CSS reset)

每个网页都必须首先进行 CSS初始化。

这里我们以京东CSS初始化代码为例。

Unicode编码字体:

把中文字体的名称用相应的Unicode编码来代替,这样就可以有效的避免浏览器解释CSS代码时候出现乱码的问题。

比如:

黑体 \9ED1\4F53

宋体 \5B8B\4F53

微软雅黑 \5FAE\8F6F\96C5\9ED1

好啦,今天就到这里,下次再更~