zoukankan      html  css  js  c++  java
  • CSS覆盖height注意事项,暨Chrome插件的使用

    由于公司的系统对Chrome支持得比较差,但是公司是不会因为小众人使用其他浏览器而改系统,所以我决定自己写Chrome插件让办公系统兼容Chrome。

    chrome的教程看官网,虽然英文但是很好懂,大赞一下google;有空我再写写中文的入门心得以及一些诡异的用法,请不要期待。

    因此下面的文章全部是在chrome环境下进行的,首先先解决一些格式错位:

    例如有一处文本框偏小,如下图中id为searchbarpanel 的文本框

     

    这个input文本框使用了height为"14px!important "的样式

    本来按照chrome插件的css覆盖模式,在manifest.json的content_scripts中加入


    { "matches": [【匹配路径】],
       "all_frames": true,
       "css": ["inject/portal/app.css"]
    }

     在app.css设置height为20px,如下,应该可以覆盖掉searchbarpanel 的样式。

    #searchbarpanel {
    height
    : 20px;}


    但是实际结果却是无法覆盖,两个height同时存在, #searchbarpanel 定义的height无法覆盖原有的height

     

    查找了一些资料,其中有“有!important声明的规则高于一切。”,“如果!important声明冲突,则比较优先权。”这样的介绍,说明两个height并不冲突(至少在Chrome中),所以Chrome没有比较优先级。

    稍微改变一下 ,自定义的height中加入!important 

    #searchbarpanel {
    height
    : 20px!important;
    }

     得到的结果如下,原来带important的规则已经被覆盖掉,chrome调试器中显示了删除线。而新规则为height:20px,但是却没有带删除线,这就不懂chrome是什么原理了。

     

    而最后的文本框也调整了高度,用同样的办法调整系统中在chrome显示异样的地方,让办公系统在Chrome上飞奔吧! 

  • 相关阅读:
    Object的原型拷贝-create、assign、getPrototypeOf 方法的结合
    配intelliJ IDEA 过程
    浅谈HTTP中Get与Post的区别
    apply、call、bind区别、用法
    引用类型与原始类型的区别
    html5标签集结1
    指针作为参数传递
    指针与指针变量
    函数模板
    内置函数
  • 原文地址:https://www.cnblogs.com/anic/p/2437762.html
Copyright © 2011-2022 走看看