PrimeFaces布局技巧之二

简介: 本文紧接《PrimeFaces布局技巧》。要注意:当使用整页布局和表单一起工作时,要避免表单内包含布局单元,它可能会导致错误。比如下面的代码可能就是无效的: [html] view plaincopyprint? ...
本文紧接《 PrimeFaces布局技巧 》。

要注意:当使用整页布局和表单一起工作时,要避免表单内包含布局单元,它可能会导致错误。比如下面的代码可能就是无效的:
[html]   view plain copy print ?
  1. p:layout fullPage="true">  
  2.   h:form>  
  3.     p:layoutUnit position="west" size="100">  
  4.       h:outputText value="Left Pane" />  
  5.     p:layoutUnit>  
  6.     p:layoutUnit position="center">  
  7.       h:outputText value="Right Pane" />  
  8.     p:layoutUnit>  
  9.   h:form>  
  10. p:layout>  

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

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

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

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


布局使用到的皮肤样式类



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


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

布局示例:


代码样例:
[html]   view plain copy print ?
  1. nbsp;HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
  2. html xmlns="http://www.w3.org/1999/xhtml"  
  3.     xmlns:h="http://java.sun.com/jsf/html"  
  4.     xmlns:f="http://java.sun.com/jsf/core"  
  5.     xmlns:ui="http://java.sun.com/jsf/facelets"  
  6.     xmlns:p="http://primefaces.org/ui">  
  7.   
  8. f:view contentType="text/html">  
  9.     h:head>  
  10.         f:facet name="first">  
  11.             meta http-equiv="X-UA-Compatible" content="EmulateIE8" />  
  12.             meta content='text/html; charset=UTF-8' http-equiv="Content-Type" />  
  13.             title>PrimeFaces Layouttitle>  
  14.         f:facet>  
  15.         style type="text/css">  
  16.         style>  
  17.     h:head>  
  18.   
  19.     h:body>  
  20.         p:layout fullPage="true">  
  21.             p:layoutUnit position="north" size="100" header="Top" resizable="true" closable="true" collapsible="true">  
  22.                 h:outputText value="顶部区域" />  
  23.             p:layoutUnit>  
  24.   
  25.             p:layoutUnit position="south" size="100" header="Bottom" resizable="true" closable="true" collapsible="true">  
  26.                 h:outputText value="底部区域" />  
  27.             p:layoutUnit>  
  28.   
  29.             p:layoutUnit position="west" size="300" header="左部" collapsible="true" footer="左底" gutter="1" effect="drop">  
  30.                 p:accordionPanel>  
  31.                     p:tab title="菜单1">  
  32.                         h:outputText value="菜单1测试" />  
  33.                     p:tab>  
  34.   
  35.                     p:tab title="菜单2">  
  36.                         h:outputText value="菜单2测试" />  
  37.                     p:tab>  
  38.   
  39.                     p:tab title="菜单3">  
  40.                         h:outputText value="菜单3测试" />  
  41.                     p:tab>  
  42.                 p:accordionPanel>  
  43.             p:layoutUnit>  
  44.   
  45.             p:layoutUnit position="center" closable="true" collapsible="true" header="Contents">  
  46.                 h:form>  
  47.                     布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。布局组件Layout是一个高度可定制的边框布局模型,它可以很轻松地创建复杂的网页布局,即使不懂Web设计。  
  48.                 h:form>  
  49.             p:layoutUnit>  
  50.         p:layout>  
  51.     h:body>  
  52.   
  53. f:view>  
  54. html>  

其实布局很简单,您认为呢?
目录
相关文章
|
存储 缓存 前端开发
localStorage容量太小? 试试它们
localStorage容量太小? 试试它们
447 0
|
12月前
|
机器学习/深度学习 安全 网络安全
网络安全词云图与技术浅谈
### 网络安全词云图与技术浅谈 本文介绍了通过词云图展示网络安全关键术语的方法,并探讨了构建现代网络安全体系的关键要素。词云图利用字体大小和颜色突出高频词汇,如恶意软件、防火墙、入侵检测系统等。文中提供了生成词云图的Python代码示例,包括安装依赖库和调整参数。此外,文章详细讨论了恶意软件防护、加密技术、身份验证、DDoS防御、社会工程学防范及威胁情报等核心技术,强调了多层次、多维度的安全策略的重要性。
476 11
网络安全词云图与技术浅谈
|
编解码 人工智能 安全
阿里云首批卓越级通过中国信通院超低延时直播性能分级评估
近期举办的2024“可信云大会”上,中国信通院正式发布了2024年上半年音视频领域最新评估结果。阿里云超低延时直播,以首批卓越级,通过中国信通院超低延时直播性能及服务质量分级测试。
355 11
阿里云首批卓越级通过中国信通院超低延时直播性能分级评估
|
API 开发工具 git
.NET CORE CliWrap 命令行
【11月更文挑战第12天】`CliWrap` 是一个用于在 .NET 应用中执行外部命令行工具的库,支持 .NET Core 及以上版本。它通过简洁的 API 提供了命令执行、参数传递、工作目录设置、环境变量配置及错误处理等功能。安装可通过 NuGet 完成,示例代码展示了如何使用 `CliWrap` 执行 `dir` 命令并获取输出。
207 0
在进行多路直播时,如何保证不同视频源之间的同步性?
在进行多路直播时,如何保证不同视频源之间的同步性?
|
存储 SQL 分布式计算
物联网数据库 IoTDB 解析
Apache IoTDB 是专为物联网时序数据打造的数据库,提供数据采集、存储、分析的功能。IoTDB 提供端云一体化的解决方案,在云端,提供高性能的数据读写以及丰富的查询能力,针对物联网场景定制高效的目录组织结构,并与 Apache Hadoop、Spark、Flink 等大数据系统无缝打通;在边缘端,提供轻量化的 TsFile 管理能力,端上的数据写到本地 TsFile,并提供一定的基础查询能力,同时支持将 TsFile 数据同步到云端。
6672 102
|
Arthas Java 测试技术
57-微服务技术栈(高级):在线检测工具Arthas(基础指令)
开发者对于生产问题故障的排查、定位,随着微服务的喷发,也不再像是以前那边依赖纯日志、gc日志进行问题排查与定位了,本节开始介绍一个生产环境使用的排错工具Arthas,帮助大家更高效、便捷地实现生产问题排错。
526 0
|
Kubernetes 容器
【k8s】如何搭建搭建k8s服务器集群(Kubernetes)(二)
【k8s】如何搭建搭建k8s服务器集群(Kubernetes)
【k8s】如何搭建搭建k8s服务器集群(Kubernetes)(二)
|
XML JSON 缓存
smartivr 5.0 接口说明 (智能电话机器人话术开发接口)
什么是电话机器人 通过ASR(语音识别)和TTS(文本转语音)模拟真人和用户通话,可用于问卷调查,自动催缴等业务,电话咨询服务,支持百度,科大,阿里云,腾讯等ASR系统,可以真人预先录音,用户完全察觉不到是机器人。 怎么使用 提供RESTful API接口,php,java,等任何语言都可以开发业务流程,也提供FreeSWITCH的原生接口mod_vad,使用esl或者lua,python,dialplan 等FreeSWITCH支持的二次开发接口,也可以通过SIP让其他软交换如Asterisk支持电话机器人功能。 演示
911 0
|
消息中间件 Java 数据库
RocketMq- 分布式事务消息
RocketMq- 分布式事务消息
RocketMq- 分布式事务消息