vue通过v-html指令渲染的富文本无法修改样式的解决方案


Posted in Javascript onMay 20, 2020

1.问题描述

在最近的vue项目中遇到的问题:v-html渲染的富文本,无法在样式表中修改样式。

代码如下,div.article-context里面的图片修改成自适应,但是没有任何效果。

<div class="article-context" v-html="post.content"></div>

<style scoped>
.article-context img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
</style>

2.分析原因

这是为什么呢?原因很简单:如果图片(img标签)在template中先写出来,那么在<style>标签中是可以修改其样式的。
我猜,这应该是vue编译的规范吧,未在虚拟dom中渲染的元素无法修改样式。

3.解决方案

解决方案1(推荐):在updated生命周期函数中,js动态设置样式,代码如下:

<script>
import $ from 'jquery'

export default {
updated() {
  $('.article-context').find('img').css({
    "width": "auto",
    "height": "auto",
    'max-width': '100%',
    'max-height': '100%'
  });
}
</script>

解决方案2(不推荐):去掉style标签中的scoped属性;至于原因?没有仔细研究,我在使用过程出现富文本编辑器无法初始化的问题。

<style>
.article-context img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
</style>

到此这篇关于vue通过v-html指令渲染的富文本无法修改样式的解决方案的文章就介绍到这了,更多相关vue v-html富文本无法修改内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
破解Session cookie的方法
Jul 28 Javascript
JavaScript 读取元素的CSS信息的代码
Feb 07 Javascript
鼠标事件延时切换插件
Mar 12 Javascript
Jquery 获取checkbox的checked问题
Nov 16 Javascript
理解javascript中的回调函数(callback)
Sep 02 Javascript
jQuery中slice()方法用法实例
Jan 07 Javascript
利用babel将es6语法转es5的简单示例
Dec 01 Javascript
vue 指定组件缓存实例详解
Apr 01 Javascript
原生javascript AJAX 三级联动的实现代码
May 04 Javascript
jquery ajaxfileuplod 上传文件 essyui laoding 效果【防止重复上传文件】
May 26 jQuery
微信小程序 确认框的实现(附代码)
Jul 23 Javascript
vue-video-player 解决微信自动全屏播放问题(横竖屏导致样式错乱问题)
Feb 25 Javascript
精读《Vue3.0 Function API》
May 20 #Javascript
40行代码把Vue3的响应式集成进React做状态管理
May 20 #Javascript
Vue3 的响应式和以前有什么区别,Proxy 无敌?
May 20 #Javascript
在Angular中实现一个级联效果的下拉框的示例代码
May 20 #Javascript
vue模块移动组件的实现示例
May 20 #Javascript
vue父子组件间引用之$parent、$children
May 20 #Javascript
jQuery HTML获取内容和属性操作实例分析
May 20 #jQuery
You might like
一个PHP的QRcode类与大家分享
2011/11/13 PHP
PHP验证码类ValidateCode解析
2017/01/07 PHP
jQuery的一些注意
2006/12/06 Javascript
JavaScript中的值是按值传递还是按引用传递问题探讨
2015/01/30 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
2015/06/03 Javascript
JavaScript实现把数字转换成中文
2015/06/29 Javascript
JavaScript jquery及AJAX小结
2016/01/24 Javascript
简单实现的JQuery文本框水印插件
2016/06/14 Javascript
JavaScript 实现的checkbox经典实例分享
2016/10/16 Javascript
js处理层级数据结构的方法小结
2017/01/17 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
浅析Angular2子模块以及异步加载
2017/04/24 Javascript
vue2.0+vue-dplayer实现hls播放的示例
2018/03/02 Javascript
jquery实现的分页显示功能示例
2019/08/23 jQuery
微信小程序实现页面浮动导航
2020/01/08 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
2020/02/27 Javascript
详解elementUI中input框无法输入的问题
2020/04/27 Javascript
JavaScript中的全局属性与方法深入解析
2020/06/14 Javascript
[06:37]2014DOTA2国际邀请赛 昔日王者渴望重回巅峰
2014/07/12 DOTA
python实现树形打印目录结构
2018/03/29 Python
Python3日期与时间戳转换的几种方法详解
2019/06/04 Python
python dict乱码如何解决
2020/06/07 Python
python中requests模拟登录的三种方式(携带cookie/session进行请求网站)
2020/11/17 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
2021/01/08 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
浅谈html5之sse服务器发送事件EventSource介绍
2017/08/28 HTML / CSS
您的网上新华书店:文轩网
2016/08/24 全球购物
Moda Italia荷兰:意大利男士服装
2019/08/31 全球购物
办理暂住证介绍信
2014/01/11 职场文书
给护士表扬信
2014/01/19 职场文书
生物制药自我鉴定
2014/01/25 职场文书
2014年元旦联欢会活动策划方案
2014/02/16 职场文书
受伤赔偿协议书
2014/09/24 职场文书
群众路线领导班子四风对照检查材料
2014/09/27 职场文书
电影红河谷观后感
2015/06/11 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python