Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当我创建Fabric.js Canvas对象时,Canvas会失去样式_Javascript_Html_Canvas_Fabricjs - Fatal编程技术网

Javascript 当我创建Fabric.js Canvas对象时,Canvas会失去样式

Javascript 当我创建Fabric.js Canvas对象时,Canvas会失去样式,javascript,html,canvas,fabricjs,Javascript,Html,Canvas,Fabricjs,我有一个画布对象,它的顶部和左侧属性通过以前的JavaScript函数定义,但是当我创建一个fabric画布对象时 var fabricCanvas= new fabric.Canvas('mycanvas'); 我的HTML画布在0上设置了顶部和左侧属性 在通过脚本创建fabric Canvas对象后,我尝试设置顶部和左侧属性,但当我这样做时,画布会更改位置,但结构功能(选择和移动功能)仍保留在画布之前的位置(fabric Canvas已将其定位的位置) 我能做些什么来解决这一冲突?有没

我有一个画布对象,它的顶部和左侧属性通过以前的JavaScript函数定义,但是当我创建一个fabric画布对象时

  var fabricCanvas= new fabric.Canvas('mycanvas');
我的HTML画布在0上设置了顶部和左侧属性

在通过脚本创建fabric Canvas对象后,我尝试设置顶部和左侧属性,但当我这样做时,画布会更改位置,但结构功能(选择和移动功能)仍保留在画布之前的位置(fabric Canvas已将其定位的位置)


我能做些什么来解决这一冲突?有没有办法使画布保持相等?

使用Fabric.js创建画布时,它会将画布包装在一个div中,并添加第二个
(用于选择在第一个画布中渲染的对象)。这将在Fabric.js的中进行解释。如果要定位画布,请将CSS规则应用于“canvas container”类的父div元素。

回答我的问题

申请

margin: 0 auto;
to class=画布容器

画布容器由fabric自动创建


请注意,如果您使用某种css预处理器(对我来说,它是Angular中的scss样式表),那么在组件scss文件中定位“canvas container”类将不起作用。对我来说,解决办法是使用通用项目css文件。

我无法超越布料对画布的定位。画布容器类不是覆盖的,它不会将任何css应用于此分区。@PiyushDholariya我认为您在js中使用css,或者实际上使用了css的范围,我在vue.js中使用fabric时遇到了同样的问题,但当我将
画布容器
CSS规则移动到全局文件时,画布容器类没有被覆盖,它没有将任何CSS应用到该div