css - 主机样式应用于 Angular2 中的组件

标签 css angular

我目前正在为我的 Angular 组件创建自定义表单组件,但遇到了一些样式问题。

我希望我的输入能够采用可变宽度并由主机组件控制。

例如:<my-input class="input">会有一个相应的类:

.input {
    width: 250px;
}

出于某种原因,如果我这样做,规则将被忽略并且不会应用于我的组件。

我见过其他人将他们的组件包装在看似不必要的 div 中,然后设置这些父 div 的样式,以便适合内部内容。当 CSS 规则就足够时,我不想仅仅为了样式目的而编写包装器。

这样做会涉及使用 :host ? 另外,怎么样,host-context(.input)然后在消费者内部应用类 CSS

最佳答案

我建议不要使用 ::ng-deep,因为 Angular 团队是 planning on deprecating it .

如果您想从任何托管您的组件的组件中设置样式,我建议您创建一个主机绑定(bind)/输入,然后使用该值通过样式指令绑定(bind)到您的组件。

关于css - 主机样式应用于 Angular2 中的组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47316528/

相关文章:

javascript - 创建后在带有模型的 html 页面中显示值

angular - AnyChart 8.1 与 Angular rowclick 事件不返回项目或期间信息

css - 位置 : sticky stops half way?

javascript - 基于样式的用户脚本问题

css - 如何在 CSS 中创建进度步骤

javascript - 包含边框、填充和边距的 html 元素 (div) 的全高?

jquery - 您可以使用 jquery、javascript 或 css 提取背景大小为 'auto' 的值吗?

angular - ionic /Angular 将对象推送到数组对象

javascript - ngb-tabset 和动态创建的标签

html - 如何让连续的 nowrap 跨度包装为单独的元素?