`
JAVA天地
  • 浏览: 673836 次
  • 性别: Icon_minigender_1
  • 来自: 太原
文章分类
社区版块
存档分类
最新评论

View 层重构之HTML篇

阅读更多

前言
还未等到下一代WEB开发技术RIA技术成熟之前,当然还得与HTML作斗争。前段时间《网站重构》炒得挺热,
这些都是进步,的确给我们新的思想。在这里总结一些开发中的点滴经验。

布局
1、上下左右布局
刚开始学制作页面,用的是MM的DW软件,可视化,让更多人学会网页制作。
还记得当初做页面用的还是DW,一个朋友问过我这一样一句话:"做网页表格多还是用层多,有什么区别?"。
我告诉他其实DW中用布局-布局表格,很快画出整个页面的框架, 然后一步步细化。做页面是挺快的事情,建议用表格,用层不好控制位置。
现在想起来真是有点误导的成份。哈,不过也许,进步需要一个过程。

《网站重构》春风吹来,用层进行页面布局的确给予我们开发带来了新的思想。
优点:
页面更清晰,代码量减少;
CSS的应用更广泛。

上下排,分层清晰,代码demo:
<div id="head">
</div>

<div id="body">
</div>

<div id="bottom">
</div>


左右排,可以用绝对定位
#head{
position:absolute
top;10px;
left:200px;
}
<div id="head">
</div>


2、DIV中的尽量少嵌套DIV,可用<p><span>

3、用padding控制层之间的分隔
<div>
</div>
<div style="padding-top:10px">
</div>

4、用border制作结构之间的分隔线
<div style="border-bottom:1px #000 solid">
</div>

5、可以用CSS的少用图片

页面布局demo(可查看源码,比以往TABLE布局的清晰多了):
http://davidblog.blogdriver.com/davidblog/inc/demo_div.jpg

form
1、form的margin以及padding
以往在页面中插入一个表单时,总是觉得margin,padding默认不为0,有时会影响页面的布局.
可以用CSS将其设加0
form{
margin:0 0 0 0px;
padding:0 0 0 0px;
}
同样p标记或其它标记你也可以定义.

2、select
optgroup的应用

3、为checkbox或radio加上label
<input id=today type=radio value="" checked><label for=today >今日</label>

4、button
前一个项目用的是图片的button。逐渐发觉应用中的缺陷。
建议还是用CSS美化。
其实CSS可以实现更美观的button

table
该用table还是得用table的。table 始终有他优胜的一面。
例如一些数据显示的GRID或结构比较统一的,分行分列的布局.
table 相关技巧

CSS Expressions的应用
用CSS应用可减少代码的编写
1、table 鼠标事件
<style>
tr{
background-color:expression((this.rowIndex%2==0)?"#e5e5e5":"#e5e5e5");
ryo:expression(
onmouseover=function()
{this.style.backgroundColor='#ffffff'},
onmouseout=function()
{this.style.backgroundColor='#e5e5e5'}
)
}
</style>

2、
width:expression{document.body.clientWidth<800 ? "760" : "1003"}

值得留意的标记
<menu>
<li>菜单1</li>
<li>菜单2</li>
</menu>
<ul>
<li>
<dd>
<tt>
<u>
<fieldset>
<legend>Health information:</legend>
Height <input type="text" size="3" />
Weight <input type="text" size="3" />
</fieldset>
<sup>superscript</sup>

分享到:
评论

相关推荐

    OpenWRT LUCI2界面定制、Ubus对象增删配置、http调用Ubus方法

    随着技术发展,LuCI也在更新换代,LUCI2便是在原有Lua代码基础上的重构版本,它采用静态HTML页面与JavaScript结合的方法来减少对服务器端的资源消耗,特别针对低性能硬件设备进行了优化。本篇将详细介绍LUCI2界面的...

    Flask项目学生管理系统(1).zip

    本篇文章将深入解析一个基于Flask的学生管理系统项目,旨在帮助读者理解和掌握如何利用Flask实现功能丰富的管理平台。 首先,我们要了解Flask的基本架构。Flask是一个微型的Web服务器框架,它允许开发者通过定义...

    基于JavaEE技术平台婚介系统的开发与设计 (1)-论文.zip

    3. **架构设计**:可能采用三层架构,包括表现层(使用JSP或JSF)、业务逻辑层(EJB或Spring Bean)、数据访问层(JDBC或Hibernate)。也可能引入MVC(Model-View-Controller)设计模式,提高代码的可维护性和可扩展...

    BR-054psd网页模板_网站psd效果图切片_PSD欧美日韩风格前端页面.zip

    在前端实现过程中,设计师通常会使用CSS3和HTML5来重构PSD模板。CSS用于控制样式和布局,HTML则负责结构化内容。通过切片得到的各个图像部分会被嵌入到HTML中,同时结合CSS进行定位和响应式设计,以适应不同的屏幕...

    java 项目

    2. **View**:视图层是用户看到和交互的部分,通常由HTML、JSP或其他模板技术构成。视图从模型获取数据,并以适当的形式展示给用户。 3. **Controller**:控制器处理用户的请求,调用模型进行数据处理,然后指示...

    java购物源码

    3. Servlet与JSP:在Web层,可能会使用Servlet来处理HTTP请求,JSP用于生成动态HTML页面,提供用户界面。 二、主要模块 1. 用户模块:包括用户注册、登录、个人信息管理等功能。可能使用Session管理用户状态,实现...

    JEECMS2012的myeclipse工程文件

    - **源代码(Source Folders)**:包括了业务逻辑、控制层、服务层、模型层以及视图层的Java源码。 - **资源文件(Resources)**:存放配置文件、图片、CSS、JavaScript等静态资源。 - **Web项目目录(WebContent...

    深入浅出Java mvc_动力节点Java学院整理

    【深入浅出Java MVC】是动力节点Java学院整理的一篇关于MVC框架模式的文章,旨在帮助读者理解并掌握这一设计模式的基本概念和工作原理。MVC全称是Model View Controller,它是一种广泛应用在Web开发中的架构模式,...

    全栈增长工程师指南---文字版.pdf

    IDE(Integrated Development Environment,集成开发环境)是开发人员必不可少的工具之一,比如WebStorm和Sublime Text。它们提供了代码高亮、代码提示、断点调试等辅助功能,帮助提高开发效率。此外,快速启动软件...

    vue,angular,avalon这三种MVVM框架优缺点

    Vue.js,由@尤雨溪老师创建,是一个轻量级的MVVM框架,专注于ViewModel层,通过双向数据绑定将View和Model紧密相连。Vue.js的设计理念在于提供简洁的API,实现数据绑定和可复用的组件。其主要优点包括: 1. **简单...

    Eclipse

    ### Eclipse 整合开发工具(基础篇)知识点详解 #### 一、Eclipse 简介及背景 **1.1 历史背景** Eclipse 是一款由 IBM 开发的开源集成开发环境 (IDE),它最初在 2001 年发布。随着其不断发展和完善,Eclipse 成为...

Global site tag (gtag.js) - Google Analytics