html - 单击 <li> 使其表现得像标签

标签 html css angularjs

我在 <li> 中有一个元素列表搜索托盘中的标签。我希望用户能够点击 <li> 内的任意位置标签切换复选框的方式与点击相关标签切换复选框的方式相同。

这是整个<li>的高度和宽度: enter image description here

这是标签的高度和宽度: enter image description here

这是它们的设置方式:

<ul id="catalogs" class="list-group collapse in">
     <li class="list-group-item" ng-repeat="catalog in catalogs">
          <input type="checkbox" id="{{catalog.id}}" name="{{catalog.id}}" ng-model="searchParams.catalogs[catalog.id]" ng-click="refreshCriteria()" />
         <label for="{{catalog.id}}">{{catalog.title}}</label>
     </li>
 </ul>

这可能吗?

最佳答案

你可以使用显示、位置和文本缩进

label {
  display:block;
  text-indent:1em;
  }
input {
  position:absolute;
  }
li {
  /* demo purpose */ border:solid;
  }
<ul id="catalogs" class="list-group collapse in">
     <li class="list-group-item" ng-repeat="catalog in catalogs">
          <input type="checkbox" id="{{catalog.id}}" name="{{catalog.id}}" ng-model="searchParams.catalogs[catalog.id]" ng-click="refreshCriteria()" />
         <label for="{{catalog.id}}">{{catalog.title}}</label>
     </li>
 </ul>

关于html - 单击 <li> 使其表现得像标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33309552/

相关文章:

javascript - 打印时删除空白页 - 使用可见性 : hidden

html - 将无序列表与图像对齐

html - 如何使盒子保持在同一条线上或彼此居中?

javascript - ng-route 读取链接并找到具有相同名称的特定 Controller

angularjs - gulp-jasmine 窗口未定义错误

angularjs - 如何在模板中设置范围?

javascript - css - 有没有办法让 div 与 h1(多行)在同一第二行?

css - 应用不透明度时,Chrome 会展平 Z 轴平移的元素

css - 在顶部堆叠 tbody

javascript - 更改弹出窗口的内容类型