css3 calc()自适应布局

我们想要实现页面自适应布局时,通常因为margin的存在,而比较麻烦;有时候想要实现宽度自适应的输入框时,也因为padding或margin的存在,而相当繁琐,同时由于浏览器兼容性而导致最终效果不一致。css3新添加属性box-sizing,在一定程度上解决了上面的问题,而在今天的文章中我们来通过css3新增加的另外一个属性calc()来实现适应布局。

calc()是css3新添加属性,它可以让你使用一个算术表达式来表达长度值,这意味着可以用它来定义div的宽度,并设置margin、padding、border等。

calc()的运算规则

  • 使用”+”、”-”、”*”、”/”四则运算;
  • 可以使用百分比、px、em、rem等单位;
  • 可以混合使用各种单位进行计算。

未完,继续阅读

盒模型及IE盒模型中的bug

盒模型

在网页制作中,css盒模型是div布局的核心,每个元素都是以块的形式来展现。在CSS中,它将页面中的每一个段落、标题、图片等元素都看成是一个装在盒子里的东西,也就是盒子里的内容。比较让人好理解一些的一个比喻是一个大纸盒子里装了一块方形的面包,面包就是一个段落、一个标题或者一幅图片,面包比盒子要小一些。面包的边缘到盒子侧边的距离就是CSS中的内边距属性(Padding),盒子的侧面四个边形成的边框就是CSS中的Border属性,而一个网页中有很多段落、标题、图片,也就是有很多这样的盒子,这些盒子和盒子之间的距离就是CSS中的外边距属性(margin)。它的计算方式如下图所示:

未完,继续阅读

css3教程:box-sizing属性

说到 IE 的 bug,在 IE6以前的版本中,IE对盒模型的解析出现一些问题,跟其它浏览器不同,将 border 与 padding 都包含在 width 之内。而另外一些浏览器则与它相反,是不包括border和padding的。

在我们开发的过程中会发现,有时候,如果对页面中的大区域进行设置时,将border、padding计算到width和height之内,反而更灵活。但W3C的 CSS2.1规范却规定了他们并不能被包含其中。考虑到这个问题,css3中引入了一个新的属性:box-sizing,它具有“content-box”和”border-box“两个值。
未完,继续阅读

apache屏蔽soso蜘蛛

前面写了一个nginx下添加禁止访问IP列表,屏蔽soso蜘蛛,想想apache下也有这个需求。直接贴配置屏蔽soso蜘蛛,IP段还是那些。
禁止soso蜘蛛IP

<Directory "/usr/local/apache2/cgi-bin"> #主机跟目录
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
    Deny from 113.108.12.154 124.115.0.0/24 124.115.4.0/24 #soso蜘蛛IP列表
</Directory>

sphinx实时索引

1、实时索引更新
有这么一种常见的情况:整个数据集非常大,以至于难于经常性的重建索引,但是每次新增的记录却相当地少。一个典型的例子是:一个论坛有1000000个已经归档的帖子,但每天只有1000个新帖子。
在这种情况下可以用所谓的“主索引+增量索引”(main+delta)模式来实现“近实时”的索引更新。
这种方法的基本思路是设置两个数据源和两个索引,对很少更新或根本不更新的数据建立主索引,而对新增文档建立增量索引。在上述例子中,那1000000个已经归档的帖子放在主索引中,而每天新增的1000个帖子则放在增量索引中。增量索引更新的频率可以非常快,而文档可以在出现几分种内就可以被检索到。
确定具体某一文档的分属那个索引的分类工作可以自动完成。一个可选的方案是,建立一个计数表,记录将文档集分成两部分的那个文档ID,而每次重新构建主索引时,这个表都会被更新。
未完,继续阅读

Linux计划任务入门详解

Linux操作系统定时任务系统 Cron 入门
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:

/sbin/service crond start #启动服务
/sbin/service crond stop #关闭服务
/sbin/service crond restart #重启服务
/sbin/service crond reload #重新载入配置

#你也可以将这个服务在系统启动的时候自动启动:
#在/etc/rc.d/rc.local这个脚本的末尾加上:
/sbin/service crond start

未完,继续阅读

nginx下添加禁止访问IP列表,屏蔽soso蜘蛛

最近公司网站服务器深受soso蜘蛛困扰,流量不多,占用资源不少,于是决定干掉soso蜘蛛。
公司是nginx服务器,方法如下
新建 /usr/local/nginx/conf/blockips.conf 需要屏蔽的ip列表文件

vi /usr/local/nginx/conf/blockips.conf

加入以下代码:

#屏蔽soso蜘蛛IP
deny 113.108.12.154;    #此为搜搜蜘蛛IP
deny 124.115.0.0/24;    #此为屏蔽搜搜蜘蛛124.115.0.1 ~ 124.115.0.255整个网段IP
deny 124.115.4.0/24;    #此为屏蔽搜搜蜘蛛124.115.4.1 ~ 124.115.4.255整个网段IP
屏蔽整个网段的IP时有可能会造成错杀,不过几率很低。

继续,将blockips.conf 加入到nginx配置中

vi /usr/local/nginx/conf/nginx.conf

在http中加入代码

http {
    #载入禁止访问的IP配置
    include blockips.conf;    #处理好相对目录问题

    ...(以下省略)

我的梦想

梦想,让人心痛的一个字眼,曾经为之努力,而今却是为之纠结。还记得父亲说过的那句话:“华,你要好好学习,将来考大学,做大官,把家乡的路修一下!”那时的我清楚的明白,要实现父亲的愿望,必须努力学习。而我也终于不辜负父亲的期望,成为村里那年唯一的一名大学生,也成为众多家长教育孩子的标杆。而他们却不知道我所考上的大学只是一所不起眼的学校,而我也成为茫茫求学子里最平凡的一员。
未完,继续阅读

Apache Rewrite解决问号匹配问题

公司网站改版需要把收录的页面301到新地址上,在写Apache Rewrite一个地址的时候怎么都搞不定。代码:

/index.php/index/supply.html?cid=101000
=》
/sell/list-101000.html

后来意识到可能是问号导致的问题,查一下资料发现确实是有问号导致的,修改后解决,代码如下:
未完,继续阅读

html5教程:audio音频标签和video视频标签

html5新增audio标签使web开发人员可以轻松的在网页内部加入音频,而video视频标签则可以加入视频文件。

audio音频标签

在页面中加入audio音频:

<audio src="horse.ogg" controls="controls" autoplay="autoplay" loop="loop">您的浏览器不支持audio</audio>

未完,继续阅读