修改数据库字符集:
|
把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
|
只是修改表的默认字符集:
|
修改字段的字符集:
|
查看数据库编码:
|
查看表编码:
|
查看字段编码:
|
修改数据库字符集:
|
把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
|
只是修改表的默认字符集:
|
修改字段的字符集:
|
查看数据库编码:
|
查看表编码:
|
查看字段编码:
|
|
JavaScript是一门应用广泛的计算机编程语言,一般具应用在Web浏览器中,大多用于客户端脚本以实现用户与服务器的交互。在游戏开发、移动应用、一些大型的服务器应用等开发进程中它在服务器端的应用也很广泛。这是一门基于原型编程的语言,其拥有第一类函数和类库。JavaScript首次由Netscape公司引入,由java公司进一步采用,并形成目前这伟大、资源众多的Web开发平台。 目前有很多的创作工具、资源等可供在开发时使用。考虑到种类如此繁多的工具,有些工具是容易或复杂的,有些是付费的,都各自承载它们的特性。但是,编程需要的是能够完成任务并最精确的那种可能。因此,选择心仪且只包含所需的功能的资源和工具需要多多考虑。 |
|
今天我们为设计师和开发者收集了一些出色的JavaScript在线资源。这些资源包括JavaScript库、平台、在线工具、应用程序等许多。访问该列表并与我们分享你的想法。 1) gif.js2) togetherjsTogetherJS是一个由Mozilla开发的免费,开源的JavaScript库,它能够为你的站点添加协助特性。 3) highlightjsHighlightjs是个代码呈现器能帮助你实现语法高亮。 |
4) favico.js通过使用Favico.js,你可以让你的图标变成动画。你可以自定义动画类型,位置,背景颜色及文字颜色。
5) chartjs使用Chartjs,你能够使用更具创造性、更高效的设计布局来表现你的数据。
6) anglesjsAngles.js是一套封装chart.js库与anguler一起使用的指令集。
7) adminjs
8) sir-trevor-jsSir Trevor是为web重新设想的富文本编辑方案:一个直观的web内容编辑器,关于如何渲染不需预设任何内容。
|
9) perimeter.jsPerimeter.js在目标元素周围创建一个无形的区域并监视鼠标行为。
10) roughdraft.jsRoughDraft.js是一个快速构建、全交互式的HTML原型,它没有重复标记及服务器端的循环或代码。
11) HTMLjs使用HTMLjs你可以直接使用DOM。
12) instanojsinstano.js可以让你即时检测网页加载后JavaScript是否禁用。
13) RulersGuides.jsRuleguides.js是一个JavaScript库,它能够让你在网页上使用photoshop的规则和引导界面。
|
14) skeuocardSkeuocard 逐步增强信用卡的输入以提供一个软件界面设计模仿实物纹理的接口
15) emberjsEmberjs是创建大型web应用最出名的框架。
16) leafletjsLeaflet是适用于移动友好的交互式地图的现代开源javascript库。
17) resumablejs一个通过HTML5 FILE API提供了并发的,稳定的和可恢复的上传的javascript库。
18) breezejs
19) handlebarsjs
20) revealjs这个工具简化了html的演示.
|
from:http://www.oschina.net/translate/20-best-javascript-resources-for-web-designers-and-developers
|
Web领域一直在发生变化并且其边界在过去的每一天都在发生变化(甚至不能以小时为计),随着其边界的扩展取得了许多新发展。在这些进步之中,开发者的不断工作创造了更大和更好的脚本,这些脚本以插件方式带来更好的终端用户体验,它们比原来更轻量级,还有更强的处理能力。 关键是这些新发展起来的脚本和插件是能构建响应式Web的,而且还不会丧失它们原有的功能特性——除了更优秀和更轻巧(就文件大小而言)之外,它们还不会增加页面加载的时间。 通过浏览文档,掌握JQuery的语法是很容易的。它可以支持选择DOM元素,创建动画,处理事件,开发Ajax应用,甚至还为开发者提供了基于JavaScript类库之上创建插件的能力。
|
|
jQuery架构的开发人员能够创建一个插件代码来扩展其功能,从而能够产生一些最好的插件,让你的网站或任何给定的项目达到一个全新的水平。 在这篇文章中,我们已经积累了一些供你挑选的最佳JQuery插件,这些插件提供了各种的功能和特性能够让你的网页呈现许多可想象到的效果。我们希望你能够在下面的列表中找到你正在寻找的插件。 在下面的评论区域让我们知道哪些插件你以前使用过或者你正在考虑在将来的项目或网站中使用哪些插件。
|
from:http://www.oschina.net/translate/jquery-plugins-to-take-your-website-to-another-level
From: Andrew Preble
2. Featherweight UI – A free, vector based and retina ready UI kit
From: Sara Hunt
3. Flat UI Free – PSD&HTML User Interface Kit
From: Designmodo
From: Visualcreative.cz
5. UI Kit
From: Abhimanyu Rana
6. Polaris UI Free – User Interface Pack
From: Designmodo
7. Square UI Free – User Interface Kit
From: Designmodo
From: Sebastiaan Scheer
From: Dylan Opet
10. Flat UI
From: Andy Law
From: Raul Taciu
12. PSD Flat UI Kit Template Vol2
13. Simple UI Kit with Flat Colors
14. Free flat UI kit (.psd freebie)
From: Emanuel Serbanoiu
From: Bloom Web Design
From: Adam Robertson
From: Cüneyt ŞEN
19. Flat UI Kit
From: JAN DVOŘÁK
From: Mansoor MJ
From: Ramil Derogongun
22. Mega Flat UI Kit
From: Kim
From: Rebecca Machamer
24. Vertical Infinity – A Mega Flat Style UI Kit PSD
From: cssauthor.com
From: Devin Schulz
26. Metro UI kit
27. Flat UI Kit
From: Zachary VanDeHey
28. Beach GUI
From: Mike Clarke
From: Hüseyin Yilmaz
30. Dark UI Kit – Free download
From: Hüseyin Yilmaz
From: Shaun Stehly
32. remember.me – Application Artboards (Free PSD)
From: Amit Jakhu
From: Raul Taciu
34. Free Flat UI Kit
From: Enes Danış
35. Flat dashboard. Free UI kit PSD
From: Prowebdesignro
36. Flat Web & UI Kit Final Pack
From: Dart 117
37. UI Kit
From: Jamie Syke
38. UI/UX Flat design – Free PSD
From: Julie Champourlier
From: Riki Tanone
40. Freebie PSD: Flat UI Kit 2 (Blog)
From: Riki Tanone
From: Asim Craft
From: Sanadas Young
From: Ryan Bales
From: Tristan Parker
45. flat UI kit
From: Daniel
From: Emrah Demirag
From: PremiumPsds
From: Andreea Nicolaescu
49. Flatastic UI
From: Designerzbase
50. Flat UI Kit
From: Eric Bieller
51. Flatilicious User Interface Free
From: Patrick M.
From: Blazrobar.com
53. Flat UI Elements
From: andrewbeckwith.com
54. Free Flat UI Kit
From: Wahib El Younssi
55. Free Deal: Flat User Interface Set
From: inkydeals.com
From: Andrew Coyle
From: Federico Espinosa
58. Flat UI Kit (free download!)
From: webdesignerdepot.com and freepick.com
From: Zeki Ghulam (Flat & Filthy)
60. Orange/Cyan UI
From: Marc Konno
61. Tablet-Friendly Almost Flat UI Kit
From: Monkee-Boy.com
From: Monkee-Boy.com
63. Flat UI kit
64. Ecommerce Flat UI Kit Vol.1 (PSD)
65. Minimize UI Kit
From: Alessio Atzeni
66. Free Flat Design UI/UX Kit
From: Julie Champourlier
67. Human After All -UI Kit Free
From: Tim Meissner
68. UI/UX Flat Design Kit – Neon Theme – FREE PSD
From: Julie Champourlier
69. Flat UI Kit – Free Download
From: Mark Peck
70. Gideo UI Kit
From: Paul
71. Flat UI Kit Free
From: Giuseppe Severo
72. Free RockMedia Media UI Kit
From: Lester Gonzales
From: Fatih Ocak
74. Flat UI Kit
75. REDMILK FREE UI Elements (PSD)
From: Emile Rohlandt
76. Metrostyle Web UI Kit (PSD)
From: Josep Roselló
From: Angelo
78. UI/UX Flat Design – Sorbet Theme – Free PSD
From: Julie Champourlier
79. Flat Design Buttons for Websites
From: Asim Craft
80. UI Kit
From: Sanadas Young
81. Grooveshark PSD (Flat redesign)
From: Zeki Ghulam (Flat & Filthy)
From: Pixelkit.com
83. Free Flat Flags
From: Muharrem Şenyıl
From: Boris Valusek
85. Eerste – Flat User Interface Kit That Is Free To Download
From: Designyourway.net
87. Weekly Freebie – Reservation Box
88. Metro UI Kit
89. Metro UI KitRegister UI — Free PSD included
From: Ionut Zamfir
90. Friends list UI (Free PSD)
From: Nicolas Mata
91. Sign Up Form
From: Dylan Opet
92. Flat Web Ui
From: Josep Roselló
93. Simple UI – Free PSD included
From: Ionut Zamfir
From: Tanveer Junayed
95. Flattastic Free
From: Vlade Dimovski
From: Pele Chaengsavang
From: Patryk Adaś
From: Patryk Adaś
From: Sadat
100. Freebie PSD: Flat & Casted Long Shadow UI Kit
From: Jacopo Spina
101. RED UI
102. Leo
104. City Break UI Kit
105. Arctic Sunset GUI Kit Free PSD (Exclusive)
106. Sweet Candy UI Kit
via thedesignpixel
此咒是释迦牟尼佛说的,出自《准提陀罗尼经》。佛言:此咒能灭十恶五逆一切罪障,成就一切白法功德。持此咒者,不问在家出家、饮酒食肉、有妻子,不拣净秽,但至心持诵,能使短命众生增寿无量。迦摩罗疾尚得除差,何况余病!若不消灭,无有是处。若诵满四十九日,准提菩萨令二圣者常随其人,所有善恶心之所念,皆于耳边一一具报。若有无福、无相、求官不遂、贫苦所逼者,常诵此咒,能令现世得轮王福,所求官位必得称遂(禅宗《传灯录》中引古人云:俱胝只念三行咒,便得名超一切人是也)。若求智慧得大智慧,求男女者便得男女。凡有所求,无不称遂,似如意珠,一切随心。(若只诵“唵,折戾主戾,准提娑婆诃。”咒心亦可,准提菩萨同样感应;若时间和地点不便,或卧或坐或立或行,均可诚心念诵,出声默念均可。)
准提神咒
准提。娑婆诃。zhǔn tí suō pó hē
注释部分
注释:娑婆诃,今音司哇哈,此句意译为‘成就圆满’。
持咒功德
(十二)《大教王经》云:“七俱胝如来,三身赞说准提菩萨真言,能度一切贤圣,若人持诵,一切所求悉得成就,不久证得大菩提果,是知准提真言,密藏之中最为第一,是真言之母,神咒之王。”
本人之前很少使用单元测试,总觉得平时的工作写得代码够多了,单元测试还要再编码,增加大量工作量,相信不少程序猿也是这么认为吧。
但是我认为,在必要的时候正确运用单元测试,可以大大缩短代码的调试时间,正所谓磨刀不误砍柴工,在此建议仍不会单元测试的,还是学一下吧。当然本人在单元测试方面还是菜鸟,无论是鸡蛋鲜花都欢迎。
最近公司请微软的人做了一些关于使用VS2012进行单元测试的小培训,小生微做笔记,结合朦胧的记忆,在此自行总结,并分享之。废话少说,先上笔记:
1.先写单元测试(依我愚见,应该是接口先行,如果有的话) -> 测试失败 -> 以最小的改动(即编写实际代码)使测试通过(而在VS2012中已经不能通过现有项目直接生成测试项目了,我觉得这个功能还是应该保留,微软总是这副德行,强迫用户适应他们的产品,但是又不得不适应);
2.不因单元测试而追加功能(代码),即逻辑不受单元测试影响;
3.改变了代码的逻辑(增删改),应及时运行单元测试;
4.在测试方法声明Attribute —— TestCategory("分类或特征名");
5.在单元测试项目添加Fakes程序集分离外部依赖(如数据库访问,获取配置信息等);
6.初始化单元测试类中的成员等信息,可添加方法并声明Attribute[TestInitialize](方法需为public);
7.测试自动化。
以下我将通过自己编写代码来验证上述笔记中的部分要点。有些未涉及,以后再尝试了。
1.新建一个单元测试项目,并添加类XmlSerializationTest,代码如下:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
[TestClass] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> XmlSerializationTest { [TestMethod] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> TestWriteXml() { UserInfo user = <span style="color: #0000ff;">new</span> UserInfo(); XmlSerialization serialization = <span style="color: #0000ff;">new</span> XmlSerialization(); <span style="color: #0000ff;">bool</span> flag = serialization.WriteXml<UserInifo>(user); Assert.IsTrue(flag); } } |
由于我这个项目是对Xml序列化进行测试,因而前提是项目中已存在了一个UserModel类,并且在单元测试项目中添加相应引用
|
1 2 3 4 5 |
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> UserModel { <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> LoginName { <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; } <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">string</span> Password { <span style="color: #0000ff;">get</span>; <span style="color: #0000ff;">set</span>; } } |
接下来在编写实际的代码,微软讲师建议我们先在测试项目编写,待通过单元测试后再将代码移到相应的项目下面。
现在整个解决方案结构如下图所示


保证整个解决方案生成成功之后点击菜单“测试” -〉 “运行” -〉 “所有测试”,发现测试不通过,于是就按照第一点笔记,以最小改动使测试通过。
修改WriteXml方法为:
|
1 2 3 4 |
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">bool</span> WriteXml<T>(T model) { <span style="color: #0000ff;">return</span> <span style="color: #0000ff;">true</span>; } |
运行测试通过。对于返回值为bool的方法,个人建议进行至少两次Assert,也就是分别对返回true和false进行Assert,因而我们再对WriteXml方法添加一个测试方法,
|
1 2 3 4 5 |
[TestMethod] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> TestWriteXmlFalse() { Assert.IsFalse(<span style="color: #0000ff;">new</span> XmlSerialization().WriteXml<UserModel>(<span style="color: #0000ff;">null</span>)); } |
运行测试,不通过,所以我得要好好改我的代码了,在改动当中坚持执行我的第三点笔记,改动代码及时运行单元测试。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
<span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> XmlSerialization { <span style="color: #0000ff;">private</span> <span style="color: #0000ff;">string</span> filePath; <span style="color: #0000ff;">public</span> XmlSerialization(<span style="color: #0000ff;">string</span> filePath) { <span style="color: #0000ff;">this</span>.filePath = filePath; } <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">bool</span> WriteXml<T>(T model, <span style="color: #0000ff;">string</span> filePath = <span style="color: #0000ff;">null</span>) <span style="color: #0000ff;">where</span> T : <span style="color: #0000ff;">class</span> { <span style="color: #0000ff;">bool</span> result = <span style="color: #0000ff;">false</span>; <span style="color: #0000ff;">if</span> (model == <span style="color: #0000ff;">null</span>) { <span style="color: #0000ff;">return</span> result; } <span style="color: #0000ff;">if</span> (<span style="color: #0000ff;">string</span>.IsNullOrEmpty(filePath)) { filePath = <span style="color: #0000ff;">this</span>.filePath; } XmlSerializer serializer = <span style="color: #0000ff;">new</span> XmlSerializer(<span style="color: #0000ff;">typeof</span>(T)); <span style="color: #0000ff;">using</span> (TextWriter tr = <span style="color: #0000ff;">new</span> StreamWriter(filePath)) { serializer.Serialize(tr, model); tr.Close(); result = <span style="color: #0000ff;">true</span>; } <span style="color: #0000ff;">return</span> result; } <span style="color: #0000ff;">public</span> T ReadXml<T>(<span style="color: #0000ff;">string</span> filePath = <span style="color: #0000ff;">null</span>) <span style="color: #0000ff;">where</span> T : <span style="color: #0000ff;">class</span> { T model = <span style="color: #0000ff;">null</span>; <span style="color: #0000ff;">if</span> (<span style="color: #0000ff;">string</span>.IsNullOrEmpty(filePath)) { filePath = <span style="color: #0000ff;">this</span>.filePath; } XmlSerializer serializer = <span style="color: #0000ff;">new</span> XmlSerializer(<span style="color: #0000ff;">typeof</span>(T)); TextReader tr = <span style="color: #0000ff;">null</span>; <span style="color: #0000ff;">try</span> { tr = <span style="color: #0000ff;">new</span> StreamReader(filePath); model = (T)serializer.Deserialize(tr); } <span style="color: #0000ff;">catch</span> { } <span style="color: #0000ff;">finally</span> { <span style="color: #0000ff;">if</span> (tr != <span style="color: #0000ff;">null</span>) { tr.Close(); tr.Dispose(); } } <span style="color: #0000ff;">return</span> model; } } |
我们发现这个类的构造函数多了一个参数,是对象序列化后保存的路径,且该类对应的测试类都需要用到,因而我希望在每次测试进行单元测试前先将对象的构建,这就是第六点笔记提供的“声明Attribute[TestInitialize]”(注意必须是public方法,我用private方法运行测试是不通过)。改造后的测试类如下:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
[TestClass] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span> XmlSerializationTest { <span style="color: #0000ff;">private</span> XmlSerialization serialization; [TestInitialize] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> InitTest() { <span style="color: #0000ff;">this</span>.serialization = <span style="color: #0000ff;">new</span> XmlSerialization(<span style="color: #800000;">@"</span><span style="color: #800000;">F:\usermodel.seri</span><span style="color: #800000;">"</span>); } [TestMethod] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> TestWriteXml() { UserModel user = <span style="color: #0000ff;">new</span> UserModel(); <span style="color: #0000ff;">bool</span> flag = serialization.WriteXml<UserModel>(user); Assert.IsTrue(flag); Assert.IsFalse(serialization.WriteXml<UserModel>(<span style="color: #0000ff;">null</span>)); } [TestMethod] <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span> TestReadXml() { UserModel user = <span style="color: #0000ff;">new</span> UserModel(); user.LoginName = <span style="color: #800000;">"</span><span style="color: #800000;">aa</span><span style="color: #800000;">"</span>; serialization.WriteXml<UserModel>(user); UserModel model = serialization.ReadXml<UserModel>(); Assert.IsNotNull(model); Assert.AreEqual(user.LoginName, model.LoginName); <span style="color: #008000;">//</span><span style="color: #008000;">路径不存在,应返回null</span> UserModel modelnull = serialization.ReadXml<UserModel>(<span style="color: #800000;">@"</span><span style="color: #800000;">F:\notexists.seri</span><span style="color: #800000;">"</span>); Assert.IsNull(modelnull); } } |
还可以分析测试代码的覆盖率,如下图所示在测试资源管理器点击“运行”下的相应选项。

居然是100%,真不知道这个东西微软是怎么分析出来的。

把类XmlSerializationTest移到相应的项目,更改命名空间,在测试项目添加相应引用,测试通过。
将解决方案添加到TFS源码管理,我这边是用的是微软云TFS免费版。
收工。
VS提供了很多类型的测试,负载、UI等等测试,感觉还是蛮强大的。
from:http://www.cnblogs.com/FreeDong/archive/2013/06/10/3129625.html

初出茅庐的你带着仍残留墨香的毕业证书踏上工作岗位,马上就被书上没写的规则和各种繁杂的日常事务来了个下马威。这样的故事实在是司空见惯,编程工作也不例外。
没有几个学生能 100% 为自己的第一份真正的工作做好准备。如果你不想成为其中之一,请学学以下这 10 项无需手把手指导就能学会的基本技能:
1、版本控制系统(VCS)
VCS 也许是计算机课程最大的疏漏。这些课程光记得教如何写代码,但却往往忘记教学生如何去管理代码。每一个程序员都应该懂得利用 Git 或 Subversion 有效地创建 repository(仓库),编辑与提交代码,进行分支与合并,了解项目工作流。
2、学会写作
身为程序员要写的不只有代码。你还要写项目的发布说明,给版本控制写提交消息,在系统里面写漏洞报告。这些和许多地方都需要清晰有效的文字交流—但这个技能计算机科学却很少强调。
3、正则表达式
正则表达式本身就是一门语言,每一个现代程序员都要擅长。每一门现代语言都支持正则表达式或者有相关标准库。如果代码需要校验某字符串是否含有 5 个字符、1 个破折号和 1 个数字,你应该马上就能写出 /^[A-Z]{5}-\d$/。
4、库的使用
现在已经是 2014 年,所以没人需要用正则表达式从 URL 析取主机名了。因为每一门现代编程语言都有执行常用功能的标准库。
程序员需要明白,那些经过开发、测试和调试的代码通常要比自己重新写的代码更好。更重要的是,无需编写的代码实现起来要快得多。
5、SQL
很多人的 SQL 都是在工作中学会的。数据库怎么会是选修课呢?有不用数据库的吗?
把数据存进平面文件的时代已经结束了。一切东西都要进出数据库,而 SQL 则是存取数据的语言。这是一门说明性语言,不是程序语言,所以用它来解决问题时需要新的思考方式。每一个程序员都应该了解数据库标准化基础,能够执行 SELECT(及 INNER、OUTER JOIN)、INSERT、UPDATE 和 DELETE。
6、会用IDE、编辑器及CLI工具
只懂用锯子的木匠永远也无法出师,所以计算机专业毕业的人只懂 Notepad 或 pico 令人惊诧。编程工具帮助操纵代码及其他数据,令程序员生活变得容易。所以每一个程序员都应该知道命令行、shell 脚本、find、grep 及 sed 的使用。
7、调试
每一个程序员都应该知道利用交互式调试器或在代码中点缀一些输出语句来调试程序。通过逐步求精来跟踪问题的能力实在是太重要了。
8、防错性编程
错误总是难免的,哪怕是明星程序员也不例外。失控是世界的常态,出错毫不奇怪。防错性编程正是理解了这个事实。如果东西不会不出错,我们就不会检查文件打开成功与否,不会检查客户 ID 是否合法数字,不用测试代码是否允许正确。
程序员需要知道,编译器告警是有用的工具,可让我们生活得更舒适,而不是要避而远之的麻烦事。每一个程序员都应该知道为什么每一个 PHP 程序都要这样开头:
set_error_reporting(E_ALL)
每一个 Perl 程序都要写上这些语句:
use strict; use warnings;
9、团队协作
很少编程工作会让你自己一个人完成,如果你经常这么做,智力会受损,表现会变弱。你的代码必须与别人的交互或者混合。再有才的程序员,如果无法与别人协作,都会给项目造成负面影响,并迅速成为组织的负担。
10、利用现有代码
在学校的时候,每一次作业都是一个新项目。但现实世界不是这样的。对于刚工作的人来说,所接到的第一项任务往往是修改代码漏洞。然后,再在现有代码库的基础上为现有系统增加一个小功能。设计新代码那是几个月后的事情,如果幸运的话。
[本文编译自:blog.newrelic.com]
from:http://www.oschina.net/news/52607/10-secrets-learned-software-engineering-degree-probably-didnt
响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动互联网浏览而诞生的。 响应式布局可以为不同终端的用户提供更加舒适的界面和更好的用户体验,而且随着目前大屏幕移动设备的普及,用大势所趋来形容也不为过。随着越来越多的设计师采用这个技术,我们不仅看到很多的创新,还看到了一些成形的模式。 优点: 面对不同分辨率设备灵活性强 能够快捷解决多设备显示适应问题 缺点: 兼容各种设备工作量大,效率低下 代码累赘,会出现隐藏无用的元素,加载时间加长 其实这是一种折中性质的设计解决方案,多方面因素影响而达不到最佳效果 一定程度上改变了网站原有的布局结构,会出现用户混淆的情况 设计思路 我们在上面了解了什么是响应式布局,那在我们的实际项目中应该怎么去设计呢?在以往我们设计网站的时候都会受到不同浏览器的兼容性的困扰,还要来个不同尺寸设备,我们该怎么淡定下来呢?有需求就会有解决方案,说到响应式布局,就不得不提起CSS3中的Media Query(媒介查询),这可是个好东西,易用、强大、快捷……Media Query是制作响应式布局的一个利器,使用这个工具,我们可以非常方便快捷的制造出各种丰富的实用性强的界面。接下来就一起来深入的了解Media Query。 1、CSS3中的Media Query(媒介查询)是什么? 通过不同的媒介类型和条件定义样式表规则。媒介查询让CSS可以更精确作用于不同的媒介类型和同一媒介的不同条件。媒介查询的大部分媒介特性都接受min和max用于表达”大于或等于”和”小于或等于”。如:width会有min-width和max-width媒介查询可以被用在CSS中的@media和@import规则上,也可以被用在HTML和XML中。通过这个标签属性,我们可以很方便的在不同的设备下实现丰富的界面,特别是移动设备,将会运用更加的广泛。 2、media query能够获取哪些值? 设备的宽和高device-width,device-height显示屏幕/触觉设备。 渲染窗口的宽和高width,height显示屏幕/触觉设备。 设备的手持方向,横向还是竖向orientation(portrait|lanscape)和打印机等。 画面比例aspect-ratio点阵打印机等。 设备比例device-aspect-ratio-点阵打印机等。 对象颜色或颜色列表color,color-index显示屏幕。 设备的分辨率resolution。 3、语法结构及用法 @media 设备名 only (选取条件) not (选取条件) and(设备选取条件),设备二{sRules} 示例一:在link中使用@media: <link rel=“stylesheet” type=“text/css” media=“only screen and (max-width: 480px),only screen and (max-device-width: 480px)” href=“link.css”/> 上面使用中only可省略,限定于计算机显示器,第一个条件max-width是指渲染界面最大宽度,第二个条件max-device-width是指设备最大宽度。 示例二:在样式表中内嵌@media: @media (min-device-width:1024px) and (max-width:989px),screen and (max-device-width:480px),(max-device-width:480px) and (orientation:landscape),(min-device-width:480px) and (max-device-width:1024px) and (orientation:portrait) {srules} 在示例二中,设置了电脑显示器分辨率(宽度)大于或等于1024px(并且最大可见宽度为989px);屏宽在480px及其以下手持设备;屏宽在480px以及横向(即480尺寸平行于地面)放置的手持设备;屏宽大于或等于480px小于1024px以及垂直放置设备的css样式。 从上面的例子可以看出,字符间以空格相连,选取条件包含在小括号内,srules为兼容设置的样式表,包含在中括号里面。only(限定某种设备,可省略),and(逻辑与),not(排除某种设备)为逻辑关键字,多种设备用逗号分隔,这一点继承了css基本语法。 4、可用设备名参数: 5、逻辑关键字: 6、可用设备名参数: 7、测试Media Queries 最后,我们需要对我们刚刚设计的Media Queries进行测试,想要在不同设备上测试Media Queries的效果,可以使用一个浏览工具来检验不同尺寸屏幕下的显示效果,在这里为大家介绍一个不错的在线工具 – Responsivator,它可以模拟iPhone等各种不同设备,并且还可以自定义不同尺寸屏幕的显示效果,只需要输入一个url甚至是本地的一个url(如:http://127.0.0.1/),就可以看到网站在不同尺寸屏幕下的显示效果。 8、通过Media Queries实现响应式布局设计 好了,我们明白了什么是Media Query,那我们一起来运用到响应式布局的设计项目中去。设计思路很简单,首先先定义在标准浏览器下的固定宽度(假如标准浏览器的分辨率为1024px,那么我们设置宽为980px),然后用Media Query来监测浏览器的尺寸变化,当浏览器的分辨率小于1024px的时候,则通过Media Query预设的样式表来将页面的宽度设置为百分比显示,这样子页面的结构元素就会根据浏览器的的尺寸来进行相对应的调整。同理,当浏览器的可视区域改变到某个值(假如为650px)的时候,页面的结构元素根据Media Query预设的层叠样式表来进行相对应的调整。看看我们的例子: /* 当浏览器的可视区域小于980px */ […]
View Details中文版本提示:System.MissingMethodException: 找不到方法:… 英文版本提示:System.MissingMethodException: Method not found:… 导致此异常的原因是引用程集版本冲突,通常可能是因为同一个项目(DLL)被多个项目(DLL)引用,导致新加的方法找不到,但是不会抛编译期异常,而是抛运行期异常。跟踪调试的时候根本无法运行到调用的地方,所以,很容易导致该解决该问题无从下手。 个人觉得这应该是VS的一个BUG,我用的是VS2008,不知道其它版本有没有同样的问题。 解决方法:修改引用的项目的AssemblyInfo.cs下的版本号,重新编译、发布。 问题解决方法: 不是补丁问题也不是版本号修改。问题发生在,提示找不到的方法,有的版本中确实未找到。替换使用的方法问题解决。 can’t get hostname for your address Navicat for Mysql 远程连接数据库 出现 1042-Can’t get hostname for your address 错误! 是什么问题。 编辑/etc/my.cnf,在:[mysqld]内添加一行:skip-name-resolveMySQL 忽略数据库表名大小写修改/etc/my.cnf,在 [mysqld] 内添加一行:lower_case_table_names=1 from:http://blog.csdn.net/jglie/article/details/6863067
View Details目前,文字信息仍是网站最主要的内容,随着CSS3技术的不断成熟,Web字体逐渐成为话题,这项让未来Web更加丰富多彩的技术拥有多种实现方案,其中之一是通过@font-face属性在网页中嵌入自定义字体,主流的浏览器都支持这项技术,本文介绍主要的几种Web字体格式及字体格式转换。 Web字体格式介绍 TrueType (.ttf) Windows和Mac系统最常用的字体格式,其最大的特点就是它是由一种数学模式来进行定义的基于轮廓技术的字体,这使得它们比基于矢量的字体更容易处理,保证了屏幕与打印输出的一致性。同时,这类字体和矢量字体一样可以随意缩放、旋转而不必担心会出现锯齿。 EOT – Embedded Open Type (.eot) 嵌入字体格式(EOT)是微软开发的一种技术,允许 OpenType 字体嵌入到网页并可以下载至浏览器渲染,浏览器根据 CSS 中 @font-face 的定义,下载,渲染这种 .EOT 后缀的字体文件。这些文件只在当前页活动的状态下,临时安装在用户的系统中。 OpenType (.otf) OpenType是一种可缩放字型(scalable font)电脑字体类型,采用PostScript格式,是美国微软公司与Adobe公司联合开发,用来替代TrueType字型的新字型。这类字体的文件扩展名为.otf,类型代码是OTTO,现行标准为OpenType 1.4。OpenType最初发表于1996年,并在2000年之后出现大量字体。它源于微软公司的TrueType Open字型,TrueType Open字型又源于TrueType字型。OpenType font包括了Adobe CID-Keyed font技术。Adobe公司已经在2002年末将其字体库全部改用OpenType格式。 WOFF – Web Open Font Format (.woff) 相对于 TrueType 和 OpenType ,WOFF(Web开发字体格式)是一种专门为了 Web 而设计的字体格式标准,它并不复杂,实际上只是对于 TrueType / OpenType 等字体格式的封装,并针对网络使用加以优化:每个字体文件中含有字体以及针对字体的元数据(Metadata),字体文件被压缩,以便于网络传输,并且不包含任何加密或者 DRM 措施。包括 Adobe、 Lino Type、Monotype 在内的几乎所有主要的字体供应商都加入到支持 WOFF 的行列中来。 SVG (Scalable Vector Graphics) Fonts (.svg) 顾名思义,就是使用SVG技术来呈现字体,还有一种gzip压缩格式的SVG字体.svgz。SVG可缩放矢量图形(Scalable Vector Graphics)是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式。SVG由W3C制定,是一个开放标准。SVG严格遵从XML语法,并用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式。SVG可以使你设计的网页可以更加精彩细致,使用简单的文本命令,SVG可实现色彩线性变化、路径、自定义字体、透明效果、滤镜效果等各式常见的图形图像效果。 在线字体格式转换工具介绍 Online Font Converter Free Font Conve The FontSquirrel Converter font-face generator Font 2 Web ttf 2 eot otf 2 woff from:http://blog.csdn.net/agileclipse/article/details/12450949
View Details