html - 为什么我不能在 WebComponent 元素上设置大小

标签 html css web-component native-web-component

我正在尝试使用 :host 选择器在 WebComponent 中设置 widthheight,但大小没有改变。这是组件的模板:

<template>
  <style>
    :host {
      width: 100px;
      height: 100px;
      background-color: rebeccapurple;
    }
  </style>

  <h1>Content</h1>
</template>

我需要做的是添加一个div作为容器并设置它的大小

<template>
  <style>
    div {
       width: 100px;
       height: 100px;
       background-color: rebeccapurple;
    }
  </style>

  <div>
    <h1>Content</h1>
  </div>
</template>

我想了解为什么这是不可能的及其原因。或者是否有更好的方法来解决这个问题。

这是它的一个 JSBin:http://jsbin.com/gesovagapi/edit?html,css,js,output

最佳答案

默认情况下,自定义组件是使用 display: inline; 创建的。如果您希望您的组件采用指定的宽度/高度,请将其 display 属性设置为 blockinline-block。例如:

  <style>
    :host {
      display: inline-block;
      width: 100px;
      height: 100px;
      background-color: rebeccapurple;
    }
  </style>

关于html - 为什么我不能在 WebComponent 元素上设置大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48331593/

相关文章:

javascript - 如何从导入的 html 中的脚本访问导入的 html 的元素

javascript - 使用什么框架来构建 Web 组件 : lit-element vs stencil vs SkateJS?

html - Chrome : text rendering

php - 如何通过表单上的提交按钮传递参数

javascript - 更改数组元素时的 CSS 绑定(bind)

html - 如何更改 twitter bootstrap uib-tab 标签标题的大小和颜色

dom - 如何使用 TSX 使 StencilJS 组件在没有组件标记的情况下呈现?

html - 放大时我所有的 h1 标签都在右边

html - 纯 CSS 自动淡出不适用于 firefox

javascript - 当鼠标位于具有不同滚动条的部分时禁用特定滚动条