这是一个已知问题/问题,无法在动态(代码隐藏)生成的 Html 标记上使用硬编码(标准)CSS 样式设置?
在我目前正在处理的项目中,我正在生成 html 标记,针对说未排序列表项的每个元素(...源是数据库查询结果)
出于说明目的,我只会画出这个想法,我认为它已经完成了很多......
collection = some sql query results returned as `List<string>` type
counter = 0
foreach item in collection
someHtmlString = String.Format("<li id='{0}_{1}'> {0}</li> ", item, counter)
counter ++
因此,对于进入 for/foreach 循环的每个项目,我正在制造一组特定的 css 和 html 属性,通常它被划分为进入循环的列表项的子集,就像在这种情况下通常为每个元素分配一个类,所以碰巧我有一堆属性,随着需要更具体的设计甚至更多......其他属性作为javascript事件但主要是样式,
说 10 x css 属性,设置说 3 或 4 种类型的设置,这意味着在我的代码中看到足迹不再那么有趣了
在我现在可以考虑从文件中读取 css 样式设置之前的一步(使用System.IO
), 我确实尝试通过它们所属的位置在样式 .css 文件中应用这些属性,但正如我注意到的那样,这些样式与硬编码的 html 标记相反,无法将属性应用于从代码/文件生成的代码。style.css
所以我想知道,如果你想避免后面代码中的那一堆行,除了从一个单独的文件中读取它(比如我能想到的 coma sepertaed),然后解析它,还有哪些选择:
说一个txtfile - 每行都是 P roperty, value。
就像在字典中一样,因此您可以将其直接从文件中读取/加载到代码中,
dictionary<string, string> StyleDict = new dictionary<string, string>();
styleDict.add(styleProperty, some value);
...etc' (10 lines like this, x 3 or 4 times , as each could be a css class i could use)
我想我已经没有想法了,将样式应用于生成的 HtmlMarkup 的正确方法是什么?(是我做错了什么还是已知问题?)