[问题] 防止动态产生之 HTML 元素之样式被覆蓋

楼主: danny0838 (道可道非常道)   2014-11-30 10:20:26
如题,设计 bookmarklet 或 browser extension 时,
往往会有些透过 javascript 在目前浏览的网页上建立 HTML 元素,
比如我要设计一个书签小工具,点击即建立一个控制选单,
大概通常会产生 div, table, tr, td, p, span, strong, code
但这些元素的样式可能被目前网页的 CSS 覆写,
如有奇葩的 CSS 宣告,比如 span { display: block; } 之类的,
这些动态产生的元素的样式往往会被覆写,造成难以预期的排版破坏。
实务上有哪些好方法能把这些动态产生的 HTML 固定为想要的样式,而不被覆蓋呢?
我知道可以把所有可能的 CSS 样式值全部写进 inline style,
不过这实在是太冗长、太麻烦了orz
作者: oToToT (屁孩)   2014-11-30 10:22:00
加个!important
作者: mmis1000 (秋月恋枫)   2014-12-01 00:40:00
用 Contextual css reset,只reset目标区块

Links booklink

Contact Us: admin [ a t ] ucptt.com