定义表格的页脚
干什么?
1.展示表格数据
2.用于页面的布局
案例
CSS
层叠样式表
贴纸游戏
类似 女生化妆
前后关系
CSS的三大书写方式
1.属性 内联样式
style属性设置
2.嵌入样式脚本style
在html中 添加style标签
在标签中添加样式
3.通过单独CSS文件的方式
1.创建css文件
2.引入css文件
怎么与html文件关联
通过link标签关联
两大必掌握技能
选择器
工作职责
抓到 要设置样式的标签
三大常用选择器
元素选择器
标签名{}
类选择器
在html中指定 类选择器的名字
.类选择器的名字{}
id选择器
#xxx{}
不同组合 可形成无数种选择器
属性
background
用于设置背景
color
设置文字颜色
with
宽度
height
高度
类选择器
写法
在起始标签的里面 添加class属性
在css文件中 使用.类选择器的名字
多类名
案例
伪类选择器
hour
转场(过渡)动画
transition:属性 动画时长 动画执行的函数 延迟执行;
盒模型
内容
内边距
使用padding设置
设置的顺序是
上右下左
padding设置
padding:10px;
上右下左都是10
padding:10px 20px;
上10 右20 下10 左20
padding:10px 20px 30px;
上10 右20 下30 左20
padding:10px 20px 30px 40px;
上10 右20 下30 左40
单独设置某一个方向的内边距
padding-left 左侧内边距
padding-right 右侧内边距
padding-top 顶部内边距
padding-bottom 底部内边距
效果:会让 内容距离边框 有一定的间距
!!!产生后遗症
影响盒子原本的宽高
真实宽度:宽+内边距+边框
边框
通过border设置(复合属性)
效果?
添加一个边框
!!!产生后遗症
影响盒子原本的宽高
真实宽度:宽+内边距+边框
破除影响的魔咒
把盒子设置成怪异盒模型
box-sizing:borderbox;
不再让 内边距和边框 影响 盒子的宽高
border:边框的宽度 边框的样式 边框的颜色;
边框的样式
dotted: 定义一个点线边框
dashed: 定义一个虚线边框
solid: 定义实线边框
double: 定义两个边框。 两个边框的宽度和 border-width 的值相同
groove: 定义3D沟槽边框。效果取决于边框的颜色值
ridge: 定义3D脊边框。效果取决于边框的颜色值
inset:定义一个3D的嵌入边框。效果取决于边框的颜色值
outset: 定义一个3D突出边框。 效果取决于边框的颜色值
单独一个方向的边框
border-bottom
底部
border-top
顶部
border-left
左侧
border-right
右侧
外边距
设置 自己与父元素或者 相邻元素的间距
margin
上右下左
单独一个方向的外边距
margin-bottom
底部
margin-top
顶部
margin-left
左侧
margin-right
右侧
特点
1.相邻元素的外边距重合现象
2.可以让元素 水平方向居中
margin:0 auto;
元素的显示模式
案例
导航条
页面布局
dispay
转块级元素
block
转内联级元素
inline
转内联块级元素
inline-block
选择器的权重
选择器
三大常用选择器
元素选择器
标签名{}
类选择器
在html中指定 类选择器的名字
.类选择器的名字{}
id选择器
#xxx{}
不同组合 可形成无数种选择器
后代选择器
选择器 (空格)选择器
可以选择父元素里面所有符合的标签(子子孙孙)
相同权重的选择器
先写的 会被 后写的覆盖掉(只有相同属性 才会被覆盖,不同属性会叠加)
权重
对比选择器的 权力大小
权重规则(计算方式)
id选择器(权重 至高无上)
类选择器(权重 差一丢丢)
元素选择器(权重 低到地底)
1.先去对比 id选择器的数量(数量多的 权重高)
2.对比类选择器的数量(如果有id选择器,id选择器数量相同;类 数量多的 权重高)
3.对比元素选择器的数量
#xx .qq .qq (想都不想 有皇帝 肯定最高)
.ee .eq .rr .tt p a
p
.vv
页面布局
技术
浮动(float)
特点
在同一行 飘着
如果给元素 设置浮动
父元素不再拥有这个元素的高度
高度塌陷
如果宽度不够
左浮动 往左面掉
右浮动 往右面掉
用法
给需要设置 水平排列的元素 添加浮动
float:left|right;
左浮动
1 2 3
右浮动
3 2 1
解决高度塌陷问题
1.设置父元素的高度(不建议使用)
2.在最后一个设置浮动标签的后面 添加一个空标签 ,
设置为clear:left|right|both;(不建议使用)
3.通过伪元素的方式
父元素:after{
content:"";
display:block;
zoom:1;
clear:both;
}
作业
背景
background
是一个复合属性
background-color
background-image
background-repeat
repeat-x
repeat-y
repeat
background-position
px
%
left top center bottom
background-attachment
重点
1.设置固定的背景图
2.sprite 精灵图 雪碧图
background-position
background-size
cover
等比放大 宽不够 按宽放大; 高不够 按高度整体放大
contain
此时会保持图像的纵横比并将图像缩放成将适合背景定位区域的最大大小
px
%
文字相关
字体
font-family
自定义字体
1.自定义字体
@font-face
font-family
随意起名字
src
字体的路径
2.使用字体
在使用的位置 使用font-family设置
如:
@font-face {
/*设置字体位置*/
src: url("字魂79号-萌趣奶油体.ttf");
font-family: halibote;
}
p{
/*font-family: "Adobe 楷体 Std R";*/
font-family: halibote;
}
文字阴影
text-shadow
x轴阴影的偏移量 y轴阴影的偏移量 羽化程度 颜色
文字颜色
color
文字字号
font-size
文本对齐的方式text-align
left 把文本排列到左边。默认值:由浏览器决定。
right 把文本排列到右边。
center 把文本排列到中间。
justify 实现两端对齐文本效果。
inherit 规定应该从父元素继承 text-align 属性的值。
text-decoration 给文本添加 上下中划线
none 默认。定义标准的文本。
underline 定义文本下的一条线。
overline 定义文本上的一条线。
line-through 定义穿过文本下的一条线。
blink 定义闪烁的文本。
text-indent 可以让首行文本缩进
white-space 处理文本间空格的样式 控制是否换行
normal 默认。空白会被浏览器忽略。
pre 空白会被浏览器保留。其行为方式类似 HTML 中的
标签。
nowrap 文本不会换行,文本会在在同一行上继续,直到遇到 标签为止。
pre-wrap 保留空白符序列,但是正常地进行换行。
pre-line 合并空白符序列,但是保留换行符。
word-spacing:设置单词间的间距
line-height
设置文字垂直方向居中
把line-height与高度设置为相同的
定位
相对定位
相对于 自己原来的位置挪动
还会占据原来的位置 不会影响到其他元素的布局
绝对定位
绝对定位 一般与相对定位 混合着去使用
如果没有设置 父元素的相对定位,就会参考body的位置定位
失去自己的默认宽度
固定定位
固定在某一个位置
失去自己的默认宽度
顶部或底部的导航条
弹出的广告
某个位置的图标(联系客服、工具按钮)
粘性定位
粘帖在某一个位置
会占据一定空间
定位后可以使用的属性
left
right
top
buttom
通常会有 页面层级关系的现象(被覆盖)
可以通过z-index设置层级 默认值1 负值往下 正值向上
只要发现事件不触发 就需要检查是不是页面层级的问题
隐藏元素的方式
opacity: 0; 不透明度设置为零 虽然隐藏 但是 依然存在 并且可以接收事件
visibility: hidden; 隐藏元素不显示 但是位置依然在 不可接收事件
display: none; 影藏元素 不再占位
overflow
超出部分处理方式
hidden
超出部分隐藏
也是清除浮动的方法之一 在父元素添加
scroll
超出部分滚动显示
一定要添加上宽度或高度
插件
使用第三方插件注意事项
1.引入CSS样式
2.引入js
3.一定要严格按照示例的HTML结构去写
swiper
1.引入CSS样式
2.引入js
通常在body结束标签的上面引入
引入的标签 script
3.一定要严格按照示例的HTML结构去写
字体图标
fontawesome
https://fontawesome.dashgame.com/
回顾
HTML
用于布局的标签
肯定是块级元素
特征
1.肯定是一个完全闭合标签
2.肯定可以设置宽高 独占一行
3.不是通过display转换的元素
有哪一些
div
p
h1-5
ul与li
用于布局元素的本质
当做容器 去盛放其他元素
内容的标签
通常是内联元素
会表示某一些内容
如
img 表示图片
src是图片的路径
a 超链接
可以点击链接到其他位置的文本
也可以在它里面放图片 或者 其他内联标签
不可以放块级元素
href是要链接的位置
input 表单标签 单行文本输入
可以演化出来很多标签
通过type值变化
text
单行文本输入
number
数字输入
radiu
单选
range
滑杆
...
span
文本
一般让某些文字 有特殊效果 会用span包裹
代码规范
脚本加载
命名
W3C规范
W3C CSS2.1的 4.1.3 节中提到:
标识符(包括选择器中的元素名,类和ID)只能包含字符[a- zA-Z0-9]和ISO 10646字符编码U+00A1及以上,再加连字号(-)和下划线(_);
它们不能以数字,或一个连字号后跟数字为开头。
它们还可以包含转义字符加任何ISO 10646字符作为一个数字编码。
选择器命名规则
2.1 字符采用
实际项目中,建议只采用字符[a-zA-Z0-9],再加连字号(-)和下划线(_)。避免使用中文。
2.2 慎用数字
以字母开头,避免纯数字,避免数字开头,以保证兼容。以数字开始的类名、ID名仅在IE6/IE7/IE8下被识别,而其它浏览器下则不识别(忽略该规则)。
2.3 区分ID和class
一个ID名在文档中只使用一次,class类名可在文档中多次使用。
2.4 语义化标签
语义化标签是个很大的话题,简单点说,语义化标签就是让css选择器的命名能够反映页面结构的功能区块,如内容区域的class类名定义为content,页脚区域的class类名定义为footer。语义化标签的一个好处是让网页结构一目了然,另外一个好处是提高网页对一些特殊浏览设备的友好性。
语义化标签的一个误区是按CSS样式表现的结果命名。
如,某区域字体大小为14px,则该区域的样式名定义为font14px,css样式为.font14px{ font-size:14px;}。如,某区域字体颜色为红色,则样式定义为red,css样式为.red { color: red; }。
这样的好处是实现某种程度的“所见即所得”,即只需要看该结构的样式名,即可知道该样式控制(实现)着怎样的效果。但其弊端同样明显。
可以想象,假设是产品boss突然要将某区域的字体颜色从red改为blue,那你是只更改.red { color: red; }将其改为.red { color: blue; }?还是“勤快”的将html页面所有的red类名更改替换为blue,再添加一个新样式.blue { color: blue; }?
前者意味着“所见非所得”,当看到一个命名为red的样式却表现为blue时,你是否觉得很诡异!?
后者意味着无止境的替换或修改,若是文件较少,还可以接受。但若是有成百上千个页面,你需要将成百上千的文件替换样式名称后再上传,崩溃了,有木有?
所以严重建议不按CSS样式表现的结果命名。
从深层层次分析,CSS的出现是让HTML只专注于结构,实现网页结构和样式的分离,这也是CSS能够代替表格布局而风靡的重要原因。按CSS样式表现结果命名,实际上是让HTML结构和CSS产生强耦合,是违背结构和样式分离的。
2.5 区分大小写
当在XHTML中使用CSS,CSS里定义的元素名称是区分大小写的。为了避免这种错误,我建议所有的定义名称都采用小写。
class和id的值在HTML和XHTML中也是区分大小写的,如果你一定要大小写混合写,请仔细确认你在CSS的定义和XHTML里的标签是一致的。
CSS命名规则常用单词
头:header
内容:content/container
尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
页面主体:main
登录条:loginbar
标志:logo
广告:banner
热点:hot
新闻:news
下载:download
子导航:subnav
菜单:menu
子菜单:submenu
搜索:search
友情链接:friendlink
页脚:footer
版权:copyright
滚动:scroll
内容:content
标签页:tab
文章列表:list
提示信息:msg
小技巧:tips
栏目标题:title
加入:joinus
指南:guide
服务:service
注册:regsiter
状态:status
投票:vote
合作伙伴:partner
你可能感兴趣的:(无标题文章)
Jetpack LiveData源码分析
xiangxiongfly915
# Android Jetpack系列 Jetpack LiveData 源码分析
文章目录JetpackLiveData源码分析前提源码分析注册订阅流程LiveData#observe()LifecycleRegistry#addObserver()ObserverWithState#dispatchEvent()LiveData#removeObserver()LiveData$LifecycleBoundObserver类LifecycleBoundObserver#sho
韦世豪比肩武磊 留洋指日可待 捧杀国足未来该叫停了
体坛消息
尤记得当年武磊出国前,网上争议不断。当时还曾写过多篇文章期待武磊留洋。如今武磊在西甲表现平平,尽管没有特别亮眼的成绩,但当时的热度可以说是无人能及。尽管争议颇多,但是武磊留洋之旅带着无数期盼和关注的。财大气粗的恒大如今恒大的韦世豪再次站在了国内球迷的眼前。恒大队的球衣数量一直庞大,实力也在中超可以说是无人能出其右。无论是的当初的潜力股球员,还是后面规划球员,都让很多人感叹,真是有钱任性,哪个俱乐部
R 地图绘制-比例尺与指北针
jamesjin63
ggplot绘制mapR语言可以进行数据分析,也可以进行地图绘制,而且非常简洁,快速。虽然Arcgis基于桌面可视化操作,能够进行空间分析,但是唯一不足的就是操作步骤繁琐而且一不小心,就要从头再来,可重复性较低。这篇文章主要讲述如何利用R语言中的ggplot与sf绘制带有指北针、图列与标尺的地图屏幕快照2020-06-28下午9.27.59.png数据我们下载非洲地区54个国家的图层Afirca.
python容器四之字典
@听风吟
Python python java rpc 大数据
文章目录1.字典介绍2.使用字典3.字典的常见操作3.1添加元素3.2删除元素3.3修改元素3.4查找元素4.字典遍历方法4.1遍历字典元素5.公共运算符6.公共方法1.字典介绍先来看看现实生活中的字典。我们知道,可以应用字典来查找汉字。在这里插入图片描述接着,来看看Python中的字典。比如,定义一个本书:{"name":"新华字典","page":568,"price":46.5}仔细观察,会
21天故事疗愈书写营小结
西游之狼
听到21天故事疗愈书写营的时候,是参与007交作业的时候,看到金玲姐的一篇叙事疗愈的文章,感觉写的特别好,很亲切,她是与自己的一个对话,真情实感的一个交流,从发现内心的小孩,到接触,从抗拒到接受鼓舞!感觉很神奇!然后自己状态也不太好,失眠的厉害!情绪经常低落!所以参加了金玲姐的一个课程。想想自己近30年的岁月里,感觉自己毫无目标、不知道为啥活着,曾经也上过情商课,希望还遇到指点迷津的大师,一个老师
干什么都要大胆去闯,大胆去试
今日昱言
干什么都要大胆去闯,大胆去试,没有什么大不了,你可以想一下,最坏的结果是什么,那都是你可以承受的。所以说你要大胆的去试,大胆的去想,不试永远没有机会,要积极的去争取。不要老想着别人来催促你,那个时代早已经过去了,你应该自己积极的推销自己,积极的去争取。图片发自App这是刚看到的一篇文章,写的很好,要学会放下,只有放下,你才会知道有一些事情根本就是无所谓的,有一些坚持是不值得的,是不需要的,并且只有
【Python小知识 - 3】:在cmd中切换不同版本的Python解释器
街 三 仔
PyQt小知识 python 开发语言
文章目录在cmd中切换不同版本的Python解释器在cmd中切换不同版本的Python解释器当电脑中有多个版本的Python解释器时,通过重命名python.exe进行区分。电脑分别下载了3.6.8和3.8.8版本的Python解释器,但是在cmd中输入python命令或pip下载模块时总是使用Python3.6.8版本的解释器。若想在cmd中使用Python3.8.8的解释器,如何进行切换?方法
2019-06-24
行走的_苹果
早起1、早睡11:40×早起(6:00)√2、复盘√3、健康早餐√记录与总结(day143)【记录+主题】早上看到一篇文章很有趣,分享如下:如果王健林说“只要你每周读两本书,每天5点起床跑步一小时,然后从7点工作到21点。坚持三年,就给你1亿。”你能不能做到?不用说,一定能。但如果没人跟你提前敲定这1亿合约,而是告诉你这样坚持有一天能挣大钱,你还能坚持下来吗?99%的人无法坚持。99%的人之所以半
收获50日徽章,辛苦与幸福并存
露娜2005
昨天收获了50天日更徽章,在这期间发布了60篇文章,8.9万字,收获1580个喜欢,1000+粉丝。回顾这段日子,就是每天自己跟宝宝争分夺秒抢时间较劲的50天,所以才会感觉特别辛苦,但是每次完成自己还算比较满意的文章,而且能收获友友们的点评与认可,心中就会有升起满满的幸福感。每天一小步,成功一大步加入的初衷就是为了写作而来,而写作最重要的品质就是持之以恒。做事是否快捷,不在一时奋发,而在能否持久。
2019-03-05
xiaosine
从事材料、化学等相关专业和领域的科研人员,工作者,其工艺流程图、化学式的绘制是少不了的,通常绘制于白色背景下,简洁,但太过于单调。放在科研文章中,难以凸显重点,放在汇报的PPT上,不符主题风格。那如何绘制出下图所示的结构式及流程图在不同背景下所衬托出的效果呢。图一结构式及流程图在不同背景下衬托出的效果可能有人会通过完成构图的两张图片用PS的图层叠加功能来实现,但通过PS处理后会发现整体颜色失真,部
数据结构.
小珑也要变强
数据结构
文章目录自我介绍数据结构基础概念简介线性结构和非线性结构线性结构非线性结构前驱和后继你的点赞评论就是对博主最大的鼓励当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~自我介绍 Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”和“内容共创官”,现在我来为大家介绍一下有关物联网-嵌入式方面的内容。数据结构基础概念简介 1968年美国克务特
【一起读书】时间这么短,如何快速获取你想要的答案?
冰凝诗与画
年前通过大花的一篇文章(自从把小孩当植物养后,整个人都好多了),加入了小号互抽群,看着大家都在日更,突然觉得不能再荒废时光了。春节也过完了,新年目标也立下了,最起码今年读的书要比去年多吧(2018年一整年读完76本书,我从中获得了什么),文章也要多写,才能练好自己的笔杆子。所以从今天开始,每天都会不定时更新,最关键的是希望大家都能领悟到阅读的魅力,一起阅读吧!今天先分享一本听到的书《快速阅读术》,
如何通过学习经典,写出一篇优质的情感爆款文【续集】
小夭读书
昨天文章中说到的都是如何通过阅读经典后,再对比自我写作中总结出的盲点,今天就要详细说说爆款文的干货内容了。首先是爆款文的选题:如果你大量去阅读一些类似的文章,你就会发现所有的文章都有套路,只要你能用心去归类总结,就一定能找到你想要写的主题。
零时空间005*99天圆满/似此星辰同昨日~随笔
似此星辰同昨日
文l仙派狼王*星辰原创时间过得真快,一晃三个月就过去了。最没想到的是,我这么懒的人,到现在,居然把自己以前写的,那些杂七杂八的东西,整理得差不多了。写不是问题,好赖能够写出来,一说到改,头疼得厉害。再一个就是舍弃,但不是丢弃,怎么说都是我自己的作品。留着有空的时候看看,或许还能找到灵感呢!不知道别人怎么想的,对于写小文,我不是特别喜欢写,总觉得和考试的文章一样,写起来总是感觉不那么舒畅。我翻看以前
深入理解Webpack核心模块Tapable钩子[异步版]
weixin_34413802
webpack javascript ViewUI
接上一篇文章深入理解Webpack核心模块WTApable钩子(同步版)tapable中三个注册方法1tap(同步)2tapAsync(cb)3tapPromise(注册的是Promise)tapable中对三个触发方法1call2callAsync3promise这一章节我们将分别实现异步的Async版本和Promise版本异步钩子AsyncParallelHookAsyncParallelHo
Day22 把时间当朋友-001
平小一
之前立了个flag,说要坚持日更100天。素材来源于上班路上听的得到或者看的文章,今天没库存了也不知道写啥,虽然早上一到公司就写了今天要日更的目标。来了之后先东搞西搞的干活,一边想素材,一会儿又签离职,正打算写的时候又被电话打断了。等我真正开始写的时候,离开始准备写的时候已经过去1个半小时了。这种情况是不是很常见?明明打算要干一件事,准备干的时候又被其他的事情不断打断,等真正想起来要干的时候时间已
webpack 之 tapable 学习
weixin_34008784
webpack javascript ViewUI
前言webpack大家应该都耳熟能详了。个人感觉,webpack的本质就是让一堆的Loader和Plugin在webpack的可支配范围内,有序可控的执行,最终生成一堆可在浏览器中执行的code和一些状态信息。而这些Loader和Plugin,有用户自定义的,也有webpack自己内部定义的。Loader的运行机制,不是这篇文章讲述的内容,有需要的朋友,可以看下我之前的这篇文章:webpack之l
webapck由浅入深——(Tapable)
weixin_33737134
webpack ViewUI
webpack系列文章webpack由浅入深——(webpack基础配置)webpack由浅入深——(webpack优化配置)webpack由浅入深——(tapable)webpack由浅入深——(webapck简易版)webpack由浅入深——(ast、loader和plugin)Tapable和webpackTapable是基于发布订阅模式实现的一个类库,提供了许多Hook类,可创建许多钩子。
SQL Server中使用异常处理调试存储过程
weixin_30583563
数据库 c#
异常处理被普遍认为是T-SQL脚本编程中的最弱的方面。幸运的是,这一点在SQLServer2005中得到了改变,因为SQLServer2005支持结构化异常处理。本文首先关注新特性“TRY……CATCH”的基本构成,然后在SQLServer2000和SQLServer2005中对照着看一些T-SQL的例子,这些例子中使用事务代码故意制造了一些违反约束限制的情况。将来的文章会继续探讨这一主题。在SQ
我的创作纪念日
我爱夜来香A
大数据
机缘一直以来都坚信一个观点:学习是一个输入输出的过程,当学到某个新知识的时候,能够说出来讲清楚或者用文章描述清楚是判断有没有掌握的一个重要方式成为CSDN创作者是偶然也是必然,之前读书的时候一直有记笔记的习惯,心里总是觉得不记录下来东西就记不住;在CSDN创作是因为当时刚入行的时候遇到问题经常在CSDN找到答案,后面也慢慢在CSDN创作文章在CSDN中,我会记录学习到的新东西、日常开发遇到的报错、
SQLite的扩展函数Carray()表值函数(三十八)
界忆
数据库 C与c++ SQLite sqlite 数据库 c++
返回:SQLite—系列文章目录上一篇:SQLite如何处理CSV虚拟表下一篇:SQLite—系列文章目录1.概述Carray()是一个具有单列的表值函数(名为“value”)和零行或多行。carray()中每一行的“值”取自C语言数组由应用程序通过参数绑定提供。这样,carray()函数提供了一种方便的机制来将C语言数组绑定到SQL查询。2.可用性默认情况下,carray()函数不会编译为SQL
ExoPlayer架构详解与源码分析(17)——TrackSelector
山雨楼
ExoPlayer 架构 android 音视频 ExoPlayer Media3 源码
系列文章目录ExoPlayer架构详解与源码分析(1)——前言ExoPlayer架构详解与源码分析(2)——PlayerExoPlayer架构详解与源码分析(3)——TimelineExoPlayer架构详解与源码分析(4)——整体架构ExoPlayer架构详解与源码分析(5)——MediaSourceExoPlayer架构详解与源码分析(6)——MediaPeriodExoPlayer架构详解与
ExoPlayer架构详解与源码分析(12)——Cache
山雨楼
ExoPlayer 架构 android 音视频 ExoPlayer Media3 源码
系列文章目录ExoPlayer架构详解与源码分析(1)——前言ExoPlayer架构详解与源码分析(2)——PlayerExoPlayer架构详解与源码分析(3)——TimelineExoPlayer架构详解与源码分析(4)——整体架构ExoPlayer架构详解与源码分析(5)——MediaSourceExoPlayer架构详解与源码分析(6)——MediaPeriodExoPlayer架构详解与
ExoPlayer详解——高级主题(官方文档)
JackeyAndev
读书笔记 ExoPlayer系列文档 ExoPlayer 电池消耗 APK收缩 OEM测试 数字版权管理
ExoPlayer详解系列文章ExoPlayer详解——入门(官方文档)ExoPlayer详解——媒体类型(官方文档)ExoPlayer详解——高级主题(官方文档)一、数字版权管理ExoPlayer使用Android的MediaDrmAPI来支持受DRM保护的播放。不同支持的DRM方案所需的最低Android版本以及支持它们的流式格式为:DRM格式Android版本号AndroidAPI级别支持的
看得见的与看不见的(转)
老度2080
巴斯夏是十九世纪中期法国经济学家。他将经济学理论与行文的机智、雄辩这两者完美地结合在一起,文章充满了有趣的寓言、辛辣的反讽、机智的辩论,阅读他的文章,本身是一种愉悦。这篇发表于1850年的《看得见的与看不见的》,正是巴斯夏最有名的文章之一。北大教授薛兆丰在其“法律经济学”课程上,次次都指定为第一篇必读文章,称此文思想是经济学思维区别于其他思维的根基。诺奖得主哈耶克曾经这样评价本文:从来没有人用这么
挑战日更的第二天
林某
说起日更,在首页看到很多文章字里行间都在鼓励着。其实去年已经在微信公众号日更了半年多。那时对字数的要求在1000字左右。断更的原因很多:花更多时间输入、照顾年幼的孩子、健身、筹备开店……每一个看似冠冕堂皇的理由后面,都是无法正常输出的借口。还有一个不是理由的理由就是:重新思考。比如文章+工作,文章&感悟……写了一段时间后,通常会对自己的文章不那么满意,而短时间又不能有质的突破。这个时候需要停下来,
第一次消零
弦言鹰meles
我终于加入消零派了。今天是第一次消零,找到了一篇零评零赞的文章,顺便看了一下对方的个人主页,是个有点冷清的地方,一个很适合消零的对象。点了个赞便开始认真看,看完了留了评,感觉自己太菜了。我就是担心人家会看不起我一个小孩子……加油吧!
把时间花在刀刃上
方糖0427
上周读了《小强升职记》,里面讲述了不少时间管理术,简称“GTD方法”,告诉我们如何才能既出色地完成工作,又快乐地享受生活,可谓干货满满,所以有了这期文章,来归纳一些提高人生效率和质量的锦囊。首先,提出一个概念“时间黑洞”,指的是,我们无意识浪费时间的情况,比如工作累了想休息一下,开始刷手机,刷完了朋友圈,又忍不住刷微博,刷豆瓣,刷抖音,不知不觉时间就流失了一大半。如果我们做事情不够主动,目的性不强
【idea实用系列7】Gradle构建项目中IDEA插件
BigDataMLApplication
gradle idea intellij-idea java ide
【idea实用系列7】Gradle构建项目中IDEA插件文章目录【idea实用系列7】Gradle构建项目中IDEA插件使用任务配置自定义生成的文件合并禁用合并并进行完全覆盖钩入生成生命周期部分重写现有内容修改完全填充的领域对象修改XML表示形式识别附加的测试目录其他事项参考链接使用要使用IDEA插件,请在构建脚本中包含以下内容:plugins{id'idea'}IDEA插件会为项目添加一些任务。
248、Python开发秘籍:技术选型与架构设计技巧解析
多多的编程笔记
python 开发语言
Python开发:掌握如何处理技术债务和遗留系统作为软件开发者,我们经常会遇到两种问题:技术债务和遗留系统。技术债务是指在软件开发过程中,为了尽快完成项目而采用的短期解决方案,这会导致代码质量下降,维护成本增加。而遗留系统则是指那些已经存在很长时间,但不再适应现代技术需求的系统。在这篇文章中,我们将介绍如何使用Python来处理这两种问题。理解技术债务技术债务可以理解为一种“借债”。想象一下,你正
微信开发者验证接口开发
362217990
微信 开发者 token 验证
微信开发者接口验证。
Token,自己随便定义,与微信填写一致就可以了。
根据微信接入指南描述 http://mp.weixin.qq.com/wiki/17/2d4265491f12608cd170a95559800f2d.html
第一步:填写服务器配置
第二步:验证服务器地址的有效性
第三步:依据接口文档实现业务逻辑
这里主要讲第二步验证服务器有效性。
建一个
一个小编程题-类似约瑟夫环问题
BrokenDreams
编程
今天群友出了一题:
一个数列,把第一个元素删除,然后把第二个元素放到数列的最后,依次操作下去,直到把数列中所有的数都删除,要求依次打印出这个过程中删除的数。
&
linux复习笔记之bash shell (5) 关于减号-的作用
eksliang
linux关于减号“-”的含义 linux关于减号“-”的用途 linux关于“-”的含义 linux关于减号的含义
转载请出自出处:
http://eksliang.iteye.com/blog/2105677
管道命令在bash的连续处理程序中是相当重要的,尤其在使用到前一个命令的studout(标准输出)作为这次的stdin(标准输入)时,就显得太重要了,某些命令需要用到文件名,例如上篇文档的的切割命令(split)、还有
Unix(3)
18289753290
unix ksh
1)若该变量需要在其他子进程执行,则可用"$变量名称"或${变量}累加内容
什么是子进程?在我目前这个shell情况下,去打开一个新的shell,新的那个shell就是子进程。一般状态下,父进程的自定义变量是无法在子进程内使用的,但通过export将变量变成环境变量后就能够在子进程里面应用了。
2)条件判断: &&代表and ||代表or&nbs
关于ListView中性能优化中图片加载问题
酷的飞上天空
ListView
ListView的性能优化网上很多信息,但是涉及到异步加载图片问题就会出现问题。
具体参看上篇文章http://314858770.iteye.com/admin/blogs/1217594
如果每次都重新inflate一个新的View出来肯定会造成性能损失严重,可能会出现listview滚动是很卡的情况,还会出现内存溢出。
现在想出一个方法就是每次都添加一个标识,然后设置图
德国总理默多克:给国人的一堂“震撼教育”课
永夜-极光
教育
http://bbs.voc.com.cn/topic-2443617-1-1.html德国总理默多克:给国人的一堂“震撼教育”课
安吉拉—默克尔,一位经历过社会主义的东德人,她利用自己的博客,发表一番来华前的谈话,该说的话,都在上面说了,全世界想看想传播——去看看默克尔总理的博客吧!
德国总理默克尔以她的低调、朴素、谦和、平易近人等品格给国人留下了深刻印象。她以实际行动为中国人上了一堂
关于Java继承的一个小问题。。。
随便小屋
java
今天看Java 编程思想的时候遇见一个问题,运行的结果和自己想想的完全不一样。先把代码贴出来!
//CanFight接口
interface Canfight {
void fight();
}
//ActionCharacter类
class ActionCharacter {
public void fight() {
System.out.pr
23种基本的设计模式
aijuans
设计模式
Abstract Factory:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 Adapter:将一个类的接口转换成客户希望的另外一个接口。A d a p t e r模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 Bridge:将抽象部分与它的实现部分分离,使它们都可以独立地变化。 Builder:将一个复杂对象的构建与它的表示分离,使得同
《周鸿祎自述:我的互联网方法论》读书笔记
aoyouzi
读书笔记
从用户的角度来看,能解决问题的产品才是好产品,能方便/快速地解决问题的产品,就是一流产品.
商业模式不是赚钱模式
一款产品免费获得海量用户后,它的边际成本趋于0,然后再通过广告或者增值服务的方式赚钱,实际上就是创造了新的价值链.
商业模式的基础是用户,木有用户,任何商业模式都是浮云.商业模式的核心是产品,本质是通过产品为用户创造价值.
商业模式还包括寻找需求
JavaScript动态改变样式访问技术
百合不是茶
JavaScript style属性 ClassName属性
一:style属性
格式:
HTML元素.style.样式属性="值";
创建菜单:在html标签中创建 或者 在head标签中用数组创建
<html>
<head>
<title>style改变样式</title>
</head>
&l
jQuery的deferred对象详解
bijian1013
jquery deferred对象
jQuery的开发速度很快,几乎每半年一个大版本,每两个月一个小版本。
每个版本都会引入一些新功能,从jQuery 1.5.0版本开始引入的一个新功能----deferred对象。
&nb
淘宝开放平台TOP
Bill_chen
C++ c 物流 C#
淘宝网开放平台首页:http://open.taobao.com/
淘宝开放平台是淘宝TOP团队的产品,TOP即TaoBao Open Platform,
是淘宝合作伙伴开发、发布、交易其服务的平台。
支撑TOP的三条主线为:
1.开放数据和业务流程
* 以API数据形式开放商品、交易、物流等业务;
&
【大型网站架构一】大型网站架构概述
bit1129
网站架构
大型互联网特点
面对海量用户、海量数据
大型互联网架构的关键指标
高并发
高性能
高可用
高可扩展性
线性伸缩性
安全性
大型互联网技术要点
前端优化
CDN缓存
反向代理
KV缓存
消息系统
分布式存储
NoSQL数据库
搜索
监控
安全
想到的问题:
1.对于订单系统这种事务型系统,如
eclipse插件hibernate tools安装
白糖_
Hibernate
eclipse helios(3.6)版
1.启动eclipse 2.选择 Help > Install New Software...> 3.添加如下地址:
http://download.jboss.org/jbosstools/updates/stable/helios/ 4.选择性安装:hibernate tools在All Jboss tool
Jquery easyui Form表单提交注意事项
bozch
jquery easyui
jquery easyui对表单的提交进行了封装,提交的方式采用的是ajax的方式,在开发的时候应该注意的事项如下:
1、在定义form标签的时候,要将method属性设置成post或者get,特别是进行大字段的文本信息提交的时候,要将method设置成post方式提交,否则页面会抛出跨域访问等异常。所以这个要
Trie tree(字典树)的Java实现及其应用-统计以某字符串为前缀的单词的数量
bylijinnan
java实现
import java.util.LinkedList;
public class CaseInsensitiveTrie {
/**
字典树的Java实现。实现了插入、查询以及深度优先遍历。
Trie tree's java implementation.(Insert,Search,DFS)
Problem Description
Igna
html css 鼠标形状样式汇总
chenbowen00
html css
css鼠标手型cursor中hand与pointer
Example:CSS鼠标手型效果 <a href="#" style="cursor:hand">CSS鼠标手型效果</a><br/>
Example:CSS鼠标手型效果 <a href="#" style=&qu
[IT与投资]IT投资的几个原则
comsci
it
无论是想在电商,软件,硬件还是互联网领域投资,都需要大量资金,虽然各个国家政府在媒体上都给予大家承诺,既要让市场的流动性宽松,又要保持经济的高速增长....但是,事实上,整个市场和社会对于真正的资金投入是非常渴望的,也就是说,表面上看起来,市场很活跃,但是投入的资金并不是很充足的......
 
oracle with语句详解
daizj
oracle with with as
oracle with语句详解 转
在oracle中,select 查询语句,可以使用with,就是一个子查询,oracle 会把子查询的结果放到临时表中,可以反复使用
例子:注意,这是sql语句,不是pl/sql语句, 可以直接放到jdbc执行的
----------------------------------------------------------------
hbase的简单操作
deng520159
数据库 hbase
近期公司用hbase来存储日志,然后再来分析 ,把hbase开发经常要用的命令找了出来.
用ssh登陆安装hbase那台linux后
用hbase shell进行hbase命令控制台!
表的管理
1)查看有哪些表
hbase(main)> list
2)创建表
# 语法:create <table>, {NAME => <family&g
C语言scanf继续学习、算术运算符学习和逻辑运算符
dcj3sjt126com
c
/*
2013年3月11日20:37:32
地点:北京潘家园
功能:完成用户格式化输入多个值
目的:学习scanf函数的使用
*/
# include <stdio.h>
int main(void)
{
int i, j, k;
printf("please input three number:\n"); //提示用
2015越来越好
dcj3sjt126com
歌曲
越来越好
房子大了电话小了 感觉越来越好
假期多了收入高了 工作越来越好
商品精了价格活了 心情越来越好
天更蓝了水更清了 环境越来越好
活得有奔头人会步步高
想做到你要努力去做到
幸福的笑容天天挂眉梢 越来越好
婆媳和了家庭暖了 生活越来越好
孩子高了懂事多了 学习越来越好
朋友多了心相通了 大家越来越好
道路宽了心气顺了 日子越来越好
活的有精神人就不显
java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Tim
feiteyizu
mysql
数据表中有记录的time字段(属性为timestamp)其值为:“0000-00-00 00:00:00”
程序使用select 语句从中取数据时出现以下异常:
java.sql.SQLException:Value '0000-00-00' can not be represented as java.sql.Date
java.sql.SQLException: Valu
Ehcache(07)——Ehcache对并发的支持
234390216
并发 ehcache 锁 ReadLock WriteLock
Ehcache对并发的支持
在高并发的情况下,使用Ehcache缓存时,由于并发的读与写,我们读的数据有可能是错误的,我们写的数据也有可能意外的被覆盖。所幸的是Ehcache为我们提供了针对于缓存元素Key的Read(读)、Write(写)锁。当一个线程获取了某一Key的Read锁之后,其它线程获取针对于同
mysql中blob,text字段的合成索引
jackyrong
mysql
在mysql中,原来有一个叫合成索引的,可以提高blob,text字段的效率性能,
但只能用在精确查询,核心是增加一个列,然后可以用md5进行散列,用散列值查找
则速度快
比如:
create table abc(id varchar(10),context blog,hash_value varchar(40));
insert into abc(1,rep
逻辑运算与移位运算
latty
位运算 逻辑运算
源码:正数的补码与原码相同例+7 源码:00000111 补码 :00000111 (用8位二进制表示一个数)
负数的补码:
符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。 -7 源码: 10000111 ,其绝对值为00000111 取反加一:11111001 为-7补码
已知一个数的补码,求原码的操作分两种情况:
利用XSD 验证XML文件
newerdragon
java xml xsd
XSD文件 (XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)。 具体使用方法和定义请参看:
http://www.w3school.com.cn/schema/index.asp
java自jdk1.5以上新增了SchemaFactory类 可以实现对XSD验证的支持,使用起来也很方便。
以下代码可用在J
搭建 CentOS 6 服务器(12) - Samba
rensanning
centos
(1)安装
# yum -y install samba
Installed:
samba.i686 0:3.6.9-169.el6_5
# pdbedit -a rensn
new password:123456
retype new password:123456
……
(2)Home文件夹
# mkdir /etc
Learn Nodejs 01
toknowme
nodejs
(1)下载nodejs
https://nodejs.org/download/ 选择相应的版本进行下载 (2)安装nodejs 安装的方式比较多,请baidu下
我这边下载的是“node-v0.12.7-linux-x64.tar.gz”这个版本 (1)上传服务器 (2)解压 tar -zxvf node-v0.12.
jquery控制自动刷新的代码举例
xp9802
jquery
1、html内容部分 复制代码代码示例: <div id='log_reload'>
<select name="id_s" size="1">
<option value='2'>-2s-</option>
<option value='3'>-3s-</option