代码之家  ›  专栏  ›  技术社区  ›  Quangdao Nguyen

能否清除CSS width属性,使其使用“width”HTML属性?

css
  •  0
  • Quangdao Nguyen  · 技术社区  · 6 年前

    在我正在开发的WordPress网站上,父主题添加了 width: auto height: auto width height HTML属性设置通过WYSIWYG(即。 <img src="/blah.png" width="320" height="160"> ),而那些样式会覆盖它。不触及父主题,理想情况下不使用JavaScript,有没有办法保留通过所见即所得设置大小的行为?我试过了 width: inherit , width: initial ,和 width: unset

    1 回复  |  直到 6 年前
        1
  •  0
  •   Jon Uleis    6 年前

    我想不出来。但这里有一个使用JavaScript的解决方案,它设置 width height

    var imgs = document.getElementsByTagName('img');
    
    Object.values(imgs).forEach((el) => {
      elWidth = el.getAttribute('width');
      elHeight = el.getAttribute('height');
      el.style.width = `${elWidth}px`;
      el.style.height = `${elHeight}px`;
    });
    img {
      width: auto;
      height: auto;
    }
    <img src="https://via.placeholder.com/800x800" width="200" height="200" />
    <img src="https://via.placeholder.com/400x400" width="200" height="200" />