javascript - 如何使用内联JS定位div的第一个字母?

标签 javascript

我正在使用所见即所得广告构建器,并尝试通过以下方式(内联 JS)设置第一个字母(Hello 中的“H”)的样式,但我仅限于此。

<script>
  div.innerHTML = unit.greeting;  //string value 
  div.style.color = "gray";    //works
  div.firstLetter.style.color = "orange";   // doesnt work
</script>

.

所见即所得输出:

 <div>
    Hello
 </div>

最佳答案

您无法使用内联样式(不将第一个字母包装在另一个元素中)来做到这一点,但您可以通过 JavaScript 添加一个类,并使用 CSS 来做到这一点:

var div = document.getElementById("target");
div.className = "the-class";
.the-class {
  color: gray;
}
.the-class:first-letter {
  color: orange;
}
<div id="target">
  Hello
</div>

如果您也需要动态生成样式:

var div = document.getElementById("target");
div.className = "the-class";

var style = document.createElement("style");
style.type = "text/css";
style.textContent =
  '.the-class { ' +
  '  color: gray; ' +
  '} ' +
  '.the-class:first-letter { ' +
  '  color: orange; ' +
  '}';
document.body.appendChild(style);
<div id="target">
  Hello
</div>

关于javascript - 如何使用内联JS定位div的第一个字母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50632805/

相关文章:

javascript - 统计指定列表中关键字出现的频率

javascript - 使用 Mongoose 未将数据保存在 MongoDB 中

javascript - 如何在 React 中访问 API 对象属性?

javascript - 更改类元素不会停止 .click 事件的工作

Javascript 数组操作 : Is there a better way to do the following?

javascript - 在两个功能完成之前发送消息

javascript - Selenium 构建 Internet Explorer 驱动程序 javascript 错误

javascript - ember 从应用程序 Controller 设置组件数据

javascript - Firebase实时数据库 - 迭代数组时获取数据

javascript - 如何找到下标字母的unicode?