Oracle APEX卡片区域占位符内容换行布局实现求助
解决Oracle APEX卡片模态对话框副标题换行问题
下面给你几个实用的解决方法,都是APEX里直接能操作的:
方法1:SQL里生成HTML换行,配合内容类型设置
直接在查询里用<br>标签拆分副标题内容,比如:
SELECT 菜品名称 AS title, '烹饪时间: ' || 烹饪时长 || '<br>分量系数: ' || 分量系数 AS subtitle, 菜品描述 AS body_text, 备注信息 AS secondary_body FROM 你的菜品表;
然后到卡片区域的副标题占位符设置里,把「内容类型」改成「HTML」——默认是纯文本,会把<br>当成文字显示,改成HTML就会解析成换行。
方法2:用CSS强制解析换行符
如果不想改SQL里的内容,就用CHR(10)在查询里加换行:
SELECT 菜品名称 AS title, '烹饪时间: ' || 烹饪时长 || CHR(10) || '分量系数: ' || 分量系数 AS subtitle, 菜品描述 AS body_text, 备注信息 AS secondary_body FROM 你的菜品表;
接着给页面加内联CSS:
.card-subtitle { white-space: pre-line; }
操作路径:页面设计 → 页面属性 → CSS → 内联CSS,把上面的代码贴进去。这个样式会让文本里的换行符生效,自动堆叠换行。
方法3:拆分占位符(最灵活)
如果你的烹饪时间、分量系数是单独的字段,直接在卡片模板里拆分显示:
- SQL查询里单独返回这两个字段:
SELECT 菜品名称 AS title, 烹饪时长, 分量系数, 菜品描述 AS body_text, 备注信息 AS secondary_body FROM 你的菜品表;
- 编辑卡片模板:找到「副标题」的模板字段,把原来的
&SUBTITLE.替换成:
<div>烹饪时间: #烹饪时长#</div> <div>分量系数: #分量系数#</div>
这样每个信息自动占一行,后期要加其他信息也方便扩展。
内容的提问来源于stack exchange,提问作者Ana Brandt
相关产品推荐
相关产品推荐

