PrimeFaces布局技巧之二

简介: 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/8659980 PrimeFaces布局技巧之二作者:chszs,转载需注明。
版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/8659980

PrimeFaces布局技巧之二

作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs

本文紧接《 PrimeFaces布局技巧》。

要注意:当使用整页布局和表单一起工作时,要避免表单内包含布局单元,它可能会导致错误。比如下面的代码可能就是无效的:
<p:layout fullPage="true">
  <h:form>
    <p:layoutUnit position="west" size="100">
      <h:outputText value="Left Pane" />
    </p:layoutUnit>
    <p:layoutUnit position="center">
      <h:outputText value="Right Pane" />
    </p:layoutUnit>
  </h:form>
</p:layout>

布局单元必定有自己的表单,因此要避免更新布局单元,应该是更新内容而不更新布局。

除了布局的“中中center”区域,其它区域都必须有自己的尺寸大小,使用size选项。

布局的另一种使用情况是基于元素的布局。它实际上相当于把整页布局fullPage属性设置为false。

布局使用到的皮肤样式类由于皮肤样式类是全局的,在主题那一章可以看到更详细的信息。


布局使用到的皮肤样式类



布局单元LayoutUnit
布局单元表示边框布局模型的一个区域。
布局单元的属性包括:


注:红色字体部分是我修订过的结果,PrimeFaces官网的文档有错误。

布局示例:


代码样例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">

<f:view contentType="text/html">
	<h:head>
		<f:facet name="first">
			<meta http-equiv="X-UA-Compatible" content="EmulateIE8" />
			<meta content='text/html; charset=UTF-8' http-equiv="Content-Type" />
			<title>PrimeFaces Layout</title>
		</f:facet>
		<style type="text/css">
		</style>
	</h:head>

	<h:body>
		<p:layout fullPage="true">
			<p:layoutUnit position="north" size="100" header="Top" resizable="true" closable="true" collapsible="true">
				<h:outputText value="顶部区域" />
			</p:layoutUnit>

			<p:layoutUnit position="south" size="100" header="Bottom" resizable="true" closable="true" collapsible="true">
				<h:outputText value="底部区域" />
			</p:layoutUnit>

			<p:layoutUnit position="west" size="300" header="左部" collapsible="true" footer="左底" gutter="1" effect="drop">
				<p:accordionPanel>
					<p:tab title="菜单1">
						<h:outputText value="菜单1测试" />
					</p:tab>

					<p:tab title="菜单2">
						<h:outputText value="菜单2测试" />
					</p:tab>

					<p:tab title="菜单3">
						<h:outputText value="菜单3测试" />
					</p:tab>
				</p:accordionPanel>
			</p:layoutUnit>

			<p:layoutUnit position="center" closable="true" collapsible="true" header="Contents">
				<h:form>
					布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。
				</h:form>
			</p:layoutUnit>
		</p:layout>
	</h:body>

</f:view>
</html>

其实布局很简单,您认为呢?
目录
相关文章
|
7月前
|
前端开发 JavaScript API
如何实现两栏布局?这篇文章告诉你所有的细节!
欢迎来到前端入门之旅!这个专栏是为那些对Web开发感兴趣、刚刚开始学习前端的读者们打造的。无论你是初学者还是有一些基础的开发者,我们都会在这里为你提供一个系统而又亲切的学习平台。我们以问答形式更新,为大家呈现精选的前端知识点和最佳实践。通过深入浅出的解释概念,并提供实际案例和练习,让你逐步建立起一个扎实的基础。无论是HTML、CSS、JavaScript还是最新的前端框架和工具,我们都将为你提供丰富的内容和实用技巧,帮助你更好地理解并运用前端开发中的各种技术。
|
3月前
|
缓存 搜索推荐 Android开发
安卓应用开发中的自定义View组件实践
【9月更文挑战第10天】在安卓开发领域,自定义View是提升用户体验和实现界面个性化的重要手段。本文将通过一个实际案例,展示如何在安卓项目中创建和使用自定义View组件,包括设计思路、实现步骤以及可能遇到的问题和解决方案。文章不仅提供了代码示例,还深入探讨了自定义View的性能优化技巧,旨在帮助开发者更好地掌握这一技能。
《QT从基础到进阶·五》组件与组件或布局与布局的重叠问题
《QT从基础到进阶·五》组件与组件或布局与布局的重叠问题
418 0
|
前端开发
前端学习案例1-圣杯布局1
前端学习案例1-圣杯布局1
82 0
前端学习案例1-圣杯布局1
html+css实战184-布局完成
html+css实战184-布局完成
128 0
html+css实战184-布局完成
|
Web App开发 前端开发 开发者
新时代布局中一些有意思的特性
新时代布局中一些有意思的特性
232 0
新时代布局中一些有意思的特性
|
Android开发
Android开发布局 案例一
Android开发布局 案例一
128 0
Android开发布局 案例一
|
XML Java Android开发
Android开发布局 案例二
Android开发布局 案例二
214 0
Android开发布局 案例二
|
算法 数据可视化 C++
Dagre布局算法源码阅读
> 内涵各种论文和算法,阅读起来较为费力。 > 适读人群:对Dagre内部实现原理有兴趣的同学。 > 阅读时长:1小时。 ## 一、前言 常见的图可视化布局算法有:Dagre布局、Sankey布局、力导布局、随机布局等。由于近期业务中需要,几种布局算法中,Dagre布局最能贴近业务需求,但同时也需要有一些定制能力。所以花时间研究了下Dagre布局的源码部分,以及其中涉及到的论文部分。有
4030 0