如何避免标签输入的宽度达到 100%
How to avoid tag inputs getting width of 100%
所以这是一个专门针对 Angular 输入标签项目的两部分问题。
我目前正在使用它,它创建的输入在输入标签本身上设置为宽度 100%。因为它在元素本身上,所以它会覆盖我使用的任何其他样式(除了 !important 或 js)。如果没有分叉项目,有什么办法可以关闭它吗?
第二部分是达到最大标签数量后是否可以删除输入部分?在达到最大值后仍然能够打字似乎违反直觉。
第 1 部分
您可以使用自定义 CSS class:
更改默认宽度
HTML
<tags-input ng-model="tags" class="myclass"></tags-input>
CSS
.myclass .host {
width: 50%;
}
第 2 部分
您也可以使用自定义 CSS class 隐藏输入:
HTML
<tags-input ng-model="tags" ng-class="{'hide-input': tags.length > 3}"></tags-input>
CSS
.hide-input .input {
display: none;
}
但请记住,用户将无法使用键盘删除标签。
实际上设置 display:block
和宽度似乎也有效
由于另一个 CSS 文件 ace.css
,我遇到了有关 ng-tags-input
宽度的问题,组件的宽度没有按预期显示,因为宽度值来自表单ace.css
。
为了解决这个问题,我刚刚创建了另一个 CSS 文件来覆盖来自 ace.css
的宽度值,在 ace.css
之后添加它,它现在可以工作了。
CSS
.tags {
width: 80%;
}
所以这是一个专门针对 Angular 输入标签项目的两部分问题。
我目前正在使用它,它创建的输入在输入标签本身上设置为宽度 100%。因为它在元素本身上,所以它会覆盖我使用的任何其他样式(除了 !important 或 js)。如果没有分叉项目,有什么办法可以关闭它吗?
第二部分是达到最大标签数量后是否可以删除输入部分?在达到最大值后仍然能够打字似乎违反直觉。
第 1 部分
您可以使用自定义 CSS class:
更改默认宽度HTML
<tags-input ng-model="tags" class="myclass"></tags-input>
CSS
.myclass .host {
width: 50%;
}
第 2 部分
您也可以使用自定义 CSS class 隐藏输入:
HTML
<tags-input ng-model="tags" ng-class="{'hide-input': tags.length > 3}"></tags-input>
CSS
.hide-input .input {
display: none;
}
但请记住,用户将无法使用键盘删除标签。
实际上设置 display:block
和宽度似乎也有效
由于另一个 CSS 文件 ace.css
,我遇到了有关 ng-tags-input
宽度的问题,组件的宽度没有按预期显示,因为宽度值来自表单ace.css
。
为了解决这个问题,我刚刚创建了另一个 CSS 文件来覆盖来自 ace.css
的宽度值,在 ace.css
之后添加它,它现在可以工作了。
CSS
.tags {
width: 80%;
}