css小技巧1
资料
1. 文本省略
单行省略:
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
多行文本省略:
- 只兼容webkit内核,不属于css规范:
width: 200px;
overflow: hidden;
text-overflow: ellipsis;
/** 隐藏超出的内容 **/
display: -webkit-box;
/** 对象作为伸缩盒子模型显示 **/
-webkit-box-orient: vertical;
/** 设置或检索伸缩盒对象的子元素的排列方式 **/
-webkit-line-clamp: 3; /** 显示的行数 **/
- 只兼Opera 10.60 +,也不属于css规范:
p {
overflow: hidden;
white-space: normal;
height: 3em;
text-overflow: -o-ellipsis-lastline;
}
- css模拟出的样式
p {
width:200px;
position: relative;
line-height: 1.4em;
/* 高设置为行高的三倍 */
height: 4.2em;
overflow: hidden;
}
p:after {
content: "...";
font-weight: bold;
position: absolute;
bottom: 0;
right: 0;
padding: 0 20px 1px 45px;
}
2. word-wrap和word-break
对于单词浏览器默认行为:
- 如果有一个单词很长,导致一行中剩下的空间已经放不下它时,则浏览器会把这个单词挪到下一行去
- 当一个单词的长度超过父容器就会溢出
word-wrap
- 兼容:几乎全部主流浏览器。
- 该属性用来标明是否允许浏览器在单词内进行断句,这是为了防止当一个字符串太长而找不到它的自然断句点时产生溢出现象。
- 解决了浏览器的第二个默认行为
//该属性常用值:
break-word 在长单词或 URL 地址内部进行换行。
word-break
- 兼容:除了opera都兼容
- 该属性用来标明怎么样进行单词内的断句。
- 同时解决了浏览器的两个默认行为
//该属性常用值:
break-all 允许在单词内换行。
keep-all 只能在半角空格或连字符处换行。
3. line-height
length 设置固定的行间距。
% 基于当前字体尺寸的百分比行间距。
number 设置数字,此数字会与当前的字体尺寸相乘来设置行间距。
4. href和src
- href
<link rel="stylesheet" href="css/demo.css"/>
<a href="https://www.baidu .com"> - src
<script style='text/javascript' src='js/demo.js'></script>
<img src="" alt="">
<iframe src="">
区别:
- href 表示超文本引用(hypertext reference);src 表示来源地址(source)
- href 的内容,是与该页面有关联,是引用;src 的内容,是页面必不可少的一部分,是引入。
- href用于在当前文档和引用资源之间确立联系,会并行下载资源并且不会停止对当前文档的处理;src用于替换当前元素,当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕
4. 处理网站logo及一些重要图片
h1 {
text-indent:-9999px;
background:url("title.jpg") no-repeat;
width:100px;
height:50px;
}
5.去最后一个li的边框(:not兼容ie9+)
.nav li:not(:last-child) {
border-right: 1px solid #666;
}
6.伪类(:)和伪元素(:: 此写法兼容ie9+)
伪类:用于向某些选择器添加特殊的效果。
- :link 向未被访问的链接添加样式。
- :visited 向已被访问的链接添加样式。
- :hover 当鼠标悬浮在元素上方时,向元素添加样式。
- :active 向被激活的元素添加样式。
- :focus 向拥有键盘输入焦点的元素添加样式。
- :first-child 向元素的第一个子元素添加样式。
- :lang 向带有指定 lang 属性的元素添加样式。
伪元素:用于将特殊的效果添加到某些选择器。
- :first-letter 向文本的第一个字母添加特殊样式。
- :first-line 向文本的首行添加特殊样式。
- :before 在元素之前添加内容。
- :after 在元素之后添加内容。
将会在内容元素的前后插入额外的元素,可以类比普通元素使用,但是在源码中找不到
操作伪元素:
content:添加内容(必须),它的值可以是以下几种:- string(包括空串), 会向元素内容中添加字符串
content: "↗" - url 用于引用媒体文件
content: url( "img/icon.png" ) - attr() 调用当前元素的属性,可以方便的比如将图片的 Alt 提示文字或者链接的 Href 地址显示出来。
//栗子:
a::before{content: attr(title)}
<a href="http://www.segmentfault.com" title="专业面向开发者的中文技术问答社区"></a>
这样做相当于:
<a href="http://www.segmentfault.com">专业面向开发者的中文技术问答社区</a>
- counter() 调用计数器,可以不使用列表元素实现序号功能。具体请参见 counter-increment 和 counter-reset 属性的用法。
h2:before { counter-increment: chapter; content: "Chapter " counter(chapter) ". " }
- string(包括空串), 会向元素内容中添加字符串
样式可以像正常元素的样式一样和content并列书写即可
伪类和伪元素也可以结合使用
给伪元素设置了display:none;他们会从DOM树上删除,普通元素则不会
伪类的效果可以通过添加一个实际的类来达到,而伪元素的效果则需要通过添加一个实际的元素才能达到,这也是为什么他们一个称为伪类,一个称为伪元素的原因。
css小技巧1的更多相关文章
- css小技巧(1)
1.-webkit-overflow-scrolling: touch; 解决ios滑动时无缓冲问题 2.::-webkit-scrollbar 设置ios滑动时是否显示滚动条 3.::selecti ...
- CSS 小技巧
CSS 小技巧 一.边框内圆角 我们在设计例如按钮等控件的时候,会遇到这样的设计:只有内侧有圆角,而边框或者描边的四个角还是保持直角的形状,用以下代码可以轻松的实现. #wrapper { width ...
- 常用的CSS小技巧
实际开发过程中会遇到一些需要用CSS小技巧处理的布局问题,现在分享几个个人工作中遇到的小问题和解决方案. 1.inline元素间的空白间隙 这里要介绍一个神器font-size:0. 如果你写了个列表 ...
- 前端开发者应该知道的 CSS 小技巧
一些小技巧让你的CSS技术更专业 使用:not()去除导航上不需要的边框 为body添加行高 垂直居中任何元素 逗号分离的列表 使用负nth-child选择元素 使用SVG图标 文本显示优化 在纯CS ...
- CSS 小技巧 | 一行代码实现头像与国旗的融合
到国庆了,大家都急着给祖国母亲庆生. 每年每到此时,微信朋友圈就会流行起给头像装饰上国旗,而今年又流行这款: emm,很不错. 那么,将一张国旗图片与我们的头像,快速得到想要的头像,使用 CSS 如何 ...
- 模仿也是提高,纯css小技巧实现头部进度条
刚开始的时候我也觉得不可能,但是就是这么神奇,总有大神给你意想不到的惊喜. 快来感受一下把.(仔细看看头部黄色条的变化) 思考一下啊,怎么出现的那,其实作者使用了一点小技巧,那就是背景色渐变和遮挡产生 ...
- Css 小技巧总结
相对偏移 指定left top等属性就能够够完美控制一个元素的位置 如: position:relative; left:2px; 今天遇到一个很好玩的问题,当两个并排浮动框,当一个框的长度太大时就会 ...
- Web前端开发基础 第四课(CSS小技巧1)
垂直居中-父元素高度确定的单行文本 父元素高度确定的单行文本的竖直居中的方法是通过设置父元素的 height 和 line-height 高度一致来实现的.如下代码: <div class=&q ...
- CSS小技巧使用
1.清除浮动 浮动给我们的代码带来的麻烦,想必不需要多说,我们会用很多方式来避免这种麻烦,其中我觉得最方便也是兼容性最好的一种是....// 清除浮动 .clearfix{ zoom: 1; } .c ...
- css小技巧
每逢大的灾难的时候,很多网站变成了灰色,如何让网站快速变灰?css代码是很简单的,用的是css的filter功能. html { filter: grayscale(100%);//IE浏览器 -we ...
随机推荐
- zabbix 监控如下内容
我们使用zabbix做了如下的监控: 1.硬件监控. 通过SNMP来进行路由器交换机的监控(这些可以跟一些厂商沟通来了解如何做). 服务器的温度以及其他,可以通过IPMI来实现.当然如果没有硬件全都是 ...
- 自动添加需要编译的源文件Android.mk模板
自动添加需要编译的源文件列表 添加第三方静态库.动态库的依赖 假设我们的项目依赖 libmath.a, libjson.a, libffmpeg.so 这几个第三方库文件,项目包含如下几个模块:a ...
- Java NIO(1):迟迟登场的NIO
Java NIO的出现 Java语言发展至今,优点大家有目共睹:面向对象的语言.简洁有效.高移植性等等.但是同样也存在很多缺点,C语言程序员口中Java太慢了,.net程序员口中Java太开放了,ph ...
- CodeIgniter框架——源码分析之Config.php
CI框架的配置信息被存储在$config数组中,我们可以添加自己的配置信息或配置文件到$config中: $this->config->load('filename'); //加载配置文件 ...
- 《从零开始学Swift》学习笔记(Day 38)——构造函数与存储属性初始化
原创文章,欢迎转载.转载请注明:关东升的博客 构造函数的主要作用是初始化实例,其中包括:初始化存储属性和其它的初始化.在Rectangle类或结构体中,如果在构造函数中初始化存储属性width和hei ...
- 《从零开始学Swift》学习笔记(Day 7)——Swift 2.0中的print函数几种重载形式
原创文章,欢迎转载.转载请注明:关东升的博客 Swift 2.0中的print函数有4种重载形式: l print(_:).输出变量或常量到控制台,并且换行. l print(_:_:).输出 ...
- ID生成策略
在电商项目中,图片名.商品ID都要唯一且方便存储,于是记录下这两个ID生成策略的方法,以便日后项目再有需要.具体代码如下 import java.util.Random; /** * 图片名生成 */ ...
- box-shadow阴影效果
.shadowBox{ -moz-box-shadow:5px 5px 5px #A9A9A9; -webkit-box-shadow:5px 5px 5px #A9A9A9; box-shadow: ...
- 超出字数部分省略(主要解决不兼容;display: -webkit-box;的浏览器)
注明:内容于http://www.cnblogs.com/chentongtong/p/5474553.html进一步整理. 1.现webkit内核的浏览器支持display: -webkit-box ...
- P2P-BT对端管理协议(附BT协议1.0)
对端管理 指的是远端peer集合的管理(尽管自身client也能够视为一个peer.但对端管理不包括自身peer) 一个client(client)必须维持与每一个远程peer连接的状态信息,即1V1 ...