CSS 简易浮动清除方法讨论
CSS白痴再来讨论一下CSS简易浮动清除的方法。没办法,菜鸟入门,一切都得从头学。大家认为很菜,很土的东西,我也得从头接触。不过我认为这一切都是值得的。 到底发生了什么?首先,大家先看图片,这里我要告诉大家我想得到什么样的效果。
精选技术长文、实践记录与系统化阅读
低噪声、高可扫读;标题、摘要、来源、标签一目了然。
采集自各技术站点的近期文章。
CSS白痴再来讨论一下CSS简易浮动清除的方法。没办法,菜鸟入门,一切都得从头学。大家认为很菜,很土的东西,我也得从头接触。不过我认为这一切都是值得的。 到底发生了什么?首先,大家先看图片,这里我要告诉大家我想得到什么样的效果。
CSS水平居中的方法有很多。现在最常用的大概就是margin加上text-align的组合了。 不过条条大道通罗马,条条小路通我家。今天还看到一个使用相对定位与负边距来使元素水平居中的方法。之前咋没玩过,乍一看还挺不理解。后来自己捉摸了一会儿,还画了两张图,终于理解了。
盒子模型(Box Model)是CSS 的核心,简单的说Web 布局设计就是一堆盒子的排列与嵌套,掌握了盒子模型与它们的摆放控制,会发现再复杂的页面也不过如此,然而,任何美好的事物都有缺憾,盒子模型有两种不同的诠释,一种来自IE6,一种来自W3C 标准浏览器。 在内容区外面,依次围绕着 padding 区,border 区,margin 区,这一模型结构在所有主流浏览器都是一致的。通过盒子模型,我们可以为我们的内容设置边界,留白以及边距,盒子...
建立站群一直是有效的当时也是同样存在危险性的搜索引擎优化方法。建立站群的主要目的有: 用站群来做外链,提高主站的PR和权重。用来做产品备用站,必要时替代或者取代主站。用来细分网站产品,来增加单一产品的针对性。 对于与第一点,用来增加主站的外链,这个现在已经很少有用这么用的,使用站群用来提高网站外链花费的时间和消费都比较大。现在主要时候博客建群的方式进行增加外链,建设外链的时候可以遵循轮链策略。做...
今天金山的刘鑫老师在邮件里谈到了“工程师思维”(工程师的思维能力,就是一种可以把想法实现出来,一步步的变成现实的思维和实践训练),借题发挥一下吧。 我上高中的时候,学校算是本市最好的中学,班主任物理老师也是特级教师,但我一直不是觉得,他讲课说不上多好,无非是循规蹈矩的套路,甚至有点死板――就拿受力分析的题目来说吧,多简单的题目,都要画坐标系,而且就只有那么几个力:重力、摩擦力、牵引力等等,来来去去...
小图整合在一张大图里,然后在不同的CSS里调用同一张图片,以此来减少请求数,这是页面优化最常用的手段,但IE6会对页面里同一个图片,只要在不同的地方有引用到就会重新请求一次,需要加JS代码解决
在使用 Siege 时,参加网上的文件,包括 东东 的,发现大家好象对 Siege 有错误的认识。大家使用 Siege 打出的压力,每秒的处理数量和真实的处理数据分别大太。。。还有人解释讲,默认 Apache 设置之关有关,所以不能打到很高的压力,只能打出每秒处理 200 多个请求。
NoSQL其实并不是什么妖魔鬼怪,相反的,NoSQL的真谛其实应该是Not Only SQL,其产生是在数据量和访问量的增大下,人为地去添加机器、切分数据到不同的机器,变得越来越困难,人力成本越来越高,于是便开始有了这样的项目,本意是提高数据存储的自动化程度,减少人为干预的时间,让负载更加均匀。在国际上,真正的代表之作有来自Google的 BigTable 和Amazon 的Dynamo,他们分别使用了不同的基本原理。
实际上,将const char*强制转换为char*类型是问题的根本原因,他破坏了C++标准,我们应该尽量避免这么做。但现实是我们已经有很多接口这样实现了,这是一种典型的像C一样使用C++的行为。所以如果你遇到这种情况,记得使用[]操作符来获取string的第一个字符的地址,而不要使用c_str方法。
最近一直在思考一个问题:如何为一个数据库建立性能模型?作为一名DBA来说,我们面临的一个巨大挑战是:如何保证数据库的性能可以满足快速变化的应用的需求,如何在数据量和访问量持续增长的情况下,保证应用的响应时间和数据库的负载处在合理的水平下。我们可能会经常面对以下的问题:某个SQL每秒要执行100次,响应时间是多少?某个应用发布后,对数据库的影响如何?所以,评估应用对数据库所产生的影响,优化应用并预测风险,保...
1.string在resize的时候,会重新申请新的内存,并将原来的内存copy到新内存上。
2.copy构造函数中也不是以\0为拷贝的结束符,而是将整个size()都进行copy。
3.直接使用resize破坏了string内部的计数,所以在string b = a的时候,b重新分配了一块全新的内存而不是和a共用。
由上面3点可以看出,string完全可以用来做一个简单的buf管理器,不过一旦决定将string用作buf就不要在使用字符串的方法,如==来判断两端buf是否相等之类,否则会有很多奇怪的错误。不过如果担心b和a不小心公用同一块内存的话,可以使用resize方法来为b自己copy出一份内存出来。
PHP中, 传递Callback的方式, 一直很丑陋. 在PHP5.3以前, 我们只有俩种选择: 1. 字符串的函数名 2. 使用create_function的返回值 在PHP5.3以后, 我们多了一个选择, 也就是Closure, $func = function () { ... }; array_walk($arr, $func);
面包屑通常水平地出现在页面顶部,一般会位于标题或页头的下方。它们提供给用户返回之前任何一个页面的链接(这些链接也是能到达当前页面的路径),在层级架构中通常是这个页面的父级页面。
当涉及到可视化布局的时候,Block Formatting Contexts提供了一个环境,HTML元素在这个环境中按照一定规则进行布局。一个环境中的元素不会影响到其它环境中的布局。 为了让我们有个感性的认识,举个不太合适的例子。你可以把一个页面想象成大的集装箱,这个集装箱里装的货物就是HTML元素。在现实生活中为了避免不同人的货物相互混淆,都是把货物打好包装再装入集装箱的。这样的话,无论你包装里面的货物怎么摆放,都不会影响到其...
Author:NinGoo posted on NinGoo.net 对于传统的关系数据库Oracle/MySQL等,NoSQL一个相当大的不足是文档资料的缺失。相对而言,Cassandra还能找到不少资料,这个ppt是我根据网上一些资料,结合这几天浏览...
今天一个同事打电话说他在退出的时候会出现一个confirm("您确定要退出吗");的提示,他又确信没有写这段代码。我使用httpwatch抓到所有页面的内容之后,使用httpwatch的find功能,查找到了confirm是出现在一个不太相关的js中,内容包含:$("#logout").click(function(){if(confirm("您确定要退出吗?"))...很明显,这里发生了元素ID污染的现象了,两个地方使用了相同的元素ID了。所以,页面中...
在实际的编程中, 有两个问题要处理, 一个是如何找出磁盘, 并将分区过滤掉, 因为Linux会同步更新磁盘分区及磁盘的数据, 如果不加区分, 数据就会不准确, 这个可以通第2列及第3列加以区分, 第二列为16的倍数的表示是磁盘而非分区, 第三列是磁盘名字, 一般的系统中磁盘都是小写的sd开头的. 对于普通的scsi磁盘, 只要找出第二列是16的倍数, 并且第三列前两个字母是”sd”的, 就表示是真正的磁盘, 比如前面的数据中, 只能取第一行. 为什么是16的倍数, 估计和一块盘最多有16个分区有关吧.
对于互动类产品,性能是最重要的,最近半年也一直致力于优化.说到优化,不能为了优化而优化.需要找到最影响性能的点.对于大型网站,对于server端的优化是有限的(相对来说),因为这涉及到底层架构改造,从时间和效果来看,并不能立竿见影.服务器端的优化更倾向于伸缩性和可扩展性,那么最利于优化,最见效果的优化属于前端的优化. 对于博客这样的内容提供网站,提供了外部组件的嵌入,提供了各种各样的布码.简单的来说,就是页面元素过多...
出自俄罗斯的开源全文搜索引擎软件Sphinx,单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。
今天同事反馈一个问题, PHP5.2.x在使用反射做函数包装的时候, 得到\"Invocation failed\"的异常, 而使用call_user_func代替则不会, 原逻辑太复杂, 经过精简以后可重现异常的代码如下.