使用 IntraWeb (10) - CSS
IW 会把大多数的视觉属性转换为 CSS; 我们主动使用 CSS 要分两步:
第一步:
{通过窗体的 StyleSheet 属性指定要链接的 CSS 文件}
procedure TIWForm1.IWAppFormCreate(Sender: TObject);
begin
StyleSheet.Filename := 'MyCss1.css'; //CSS 文件须放在 wwwroot 下
// StyleSheet.URL := 'http://...'; //外链
end;
{假如站点级的 CSS ... TIWServerController.OnCreate}
procedure TIWServerController.IWServerControllerBaseCreate(Sender: TObject);
begin
StyleSheet.Filename := 'MyCss1.css'; //CSS 文件须放在 wwwroot 下
// StyleSheet.URL := 'http://...'; //外链
end;
第二步:
{为要使用样式的控件指定 Css 属性}
procedure TIWForm1.IWAppFormCreate(Sender: TObject);
begin
StyleSheet.Filename := 'MyCss1.css';
IWMemo1.Css := 'Class1'; //假如 MyCss1.css 中有个 Class1 的类, 如: .Class {font-size: 32px; }
IWMemo1.StyleRenderOptions.RenderFont := False; //一般情况下, 还需要同时调整下 StyleRenderOptions 属性
end;
{------------------------------------------------------------------
关于 StyleRenderOptions 属性:
如果我们给控件使用了 CSS, 就有可能和控件本身的属性发生冲突, 用哪一个呢? 这需要控件的 StyleRenderOptions 属性来决定!
它也是个类(IWTypes.TIWStyleRenderOptions
CSS 的诸多操作类似与 JavaScript, 譬如:
procedure TIWForm1.IWAppFormCreate(Sender: TObject);
begin
IWServerController.HTMLHeaders('<link type="text/css" rel="stylesheet" href="MyCss1.css"/>');
Self.PreHeader.Add('<link type="text/css" rel="stylesheet" href="MyCss2.css"/>');
Self.ExtraHeader.Add('<link type="text/css" rel="stylesheet" href="MyCss3.css"/>');
IWServerController.ContentFiles.Add('MyCss4.css');
Self.ContentFiles.Add('MyCss5.css');
end;
有没有可能直接在代码中写入 CSS 呢?
{使用 ExtraTagParams 属性}
IWLabel1.ExtraTagParams.Add('style = color: #f00; font-size:22px;');
{使用 OnHTMLTag 事件, 需要 uses IWHTMLTag}
procedure TIWForm1.IWLabel1HTMLTag(ASender: TObject; ATag: TIWHTMLTag);
begin
ATag.AddStringParam('style', 'color: #f00; font-size:22px;');
end;
使用 IntraWeb (10) - CSS的更多相关文章
- HTML+CSS学习笔记 (10) - CSS格式化排版
文字排版--字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性.下面我们来看一个例子,下面代码实现:为网页中的文字设置字体为宋体. body{font-family:" ...
- 8.10 CSS知识点3
7.属性选择符 选择符 版本 描述 E[att] CSS2 选择具有att属性的E元素 E[att="val"] CSS2 选择具有att属性值等于val的E元素 E[att~=& ...
- CSS基础学习-10.CSS伸缩盒(老版本)
- css 10 款非常棒的CSS代码格式化工具推荐
http://www.iteye.com/news/23692/ 10 款非常棒的CSS代码格式化工具推荐 2011-12-14 09:31 by 副主编 wangguo 评论(0) 有9111人浏 ...
- 10 款非常棒的CSS代码格式化工具推荐
如果你刚开始学习CSS,这意味着你的很多代码或结构可能需要优化,比如你可能过多使用了类.添加了多余的间隔或空行等等,这将导致代码臃肿.混乱,可读性和执行效率将大大降低. 本文为你整理了几款CSS工具, ...
- 10个HTML和CSS必须知道的重点难点问题
前端日刊 登录 10个HTML和CSS必须知道的重点难点问题 2018-02-26 阅读 2982 收藏 6 原链:segmentfault.com 分享到: 前端必备图书<深入浅出Node ...
- 豪情-CSS解构系列之-新浪页面解构-01
目录: 一. 新浪的布局特点 二. 内容细节的特点 三. 其中相关的一些基础技术点 1. 常见布局方法 2. 布局要点 3. Debugger误区 4.列表 5.字体颜色 6.CSS选择符 7.CSS ...
- CSS的选择器
<div id="demo"> <div class="inner"> <p><a href="#" ...
- BAT及各大互联网公司2014前端笔试面试题--Html,Css篇
很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习前端基础更是大有裨益. 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正 ...
随机推荐
- [转载]CSS Tools: Reset CSS
http://meyerweb.com/eric/tools/css/reset/ The goal of a reset stylesheet is to reduce browser incons ...
- __class__属性与元类
class M(type): def __str__(self): return "gege" aa = "ccf" cc = "ccc" ...
- WPF的EventAggregator的发布和订阅
EventAggregator是Prism中专门处理ViewModel与ViewModel之间事件传递的类对象,它提供了针对事件的发布方法和订阅方法,所以可以非常方便的来管理事件.下面分几步来实现相关 ...
- 使用eclipse为Servlet在Tomcat中的部署方法
一:下载安装jdk,tomcat,eclipse: 使用eclipse建立动态web项目lcj,更改编译文件目录,方法如下: 右键点击→工程名称→属性(Properties)或(Building Pa ...
- JavaScript深入解读
JavaScript是运行在浏览器上的脚本语言.我们平时看到丰富多彩的网页,这要在很大程度上归功于JavaScript. 引子 学点儿历史 JavaScript在编程语言的阵营里也是老资格了.它诞生于 ...
- WebStrom配置node.js
Webstrom的注册码: WebStorm 7.0.1注册码 user name:newasp 注册码: ===== LICENSE BEGIN ===== 16417-12042010 00001 ...
- NodeJS学习:环境变量
简介 环境变量(environment variables) 不属于 NodeJS 范畴,它是操作系统用于设定执行环境的参数.会在程序运行时传递给应用程序. NodeJS 获取环境变量,是通过 glo ...
- Kotlin中var和val的区别
Kotlin中有两个关键字定义变量,这两个关键字外形看着差别很小就只差了一个字母,但实际差别很大的. var是一个可变变量,这是一个可以通过重新分配来更改为另一个值的变量.这种声明变量的方式和Java ...
- mysql 5.7 百度云网盘下载
mysql 百度云下载 链接: https://pan.baidu.com/s/1fPSEcgtDN7aU2oQ_sL08Ww 提取码: 关注公众号[GitHubCN]回复2539获取
- Vue常用模板语法
常用模板语法 本篇将在上一篇的基础上记录文本渲染.表达式.过滤器以及常用指令的简单用法. 一.文本渲染 Vue支持动态渲染文本,即在修改属性的同时,实时渲染文本内容.同时为了提高渲染效率,也支持只 ...