VSCode 不能自动完成HTML

124

我在Windows 7上安装的新版Visual Studio Code遇到了问题。 在Mac上,编辑器会自动关闭HTML标签,但在我Win7上没有。 我认为一定有某种选项可以打开它,但我找不到。

我指的是例如输入<html时,IntelliSense弹出并单击Enter键通常会自动添加</html>,我的不起作用。 (IntelliSense弹出,但当您选择其中一个选项时,它不会自动关闭标记:<h1> -> </h1>


你可以使用 Auto Close Tag 插件来满足你的需求。 - jialin wang
2
2.输入一个标签名,比如div,然后按两次Tab键,它会自动完成整个标签 ----- > <div></div> - jialin wang
你也可以自动创建带有类或ID名称的<div>元素。 在编辑器中输入“.someclassname”并按下Tab键。你将得到<div class"someclassname"></div>。或者只需在名称后面放置#而不是句号,然后按下Tab键,它将为您提供一个带有ID的<div>。 - tcanbolat
18个回答

4
如果您想将“Django HTML”作为文件语言并仍然具有自动闭合标签功能,只需将以下内容添加到settings.json中(前提是您已安装了auto close tag扩展):
  "auto-close-tag.activationOnLanguage": [
    "django-html",
    (...other languages if needed)
  ],

2

文件 > 首选项 > 快捷键映射, 搜索“自动关闭”并单击安装。 如果不起作用,请重新加载插件。


2

按下 Ctrl + Shift + P 打开命令。 然后,输入 更改语言模式 并选择 HTML 或任何其他所需的语言。


谢谢,你的回答帮了我很多。 - Bijay Singh

2
如果HTML标签自动完成问题出现在JavaScript文件中,那么您只需要将“选择语言模式”从“JavaScript”更改为“JavaScript React”。

2

如果您输入

div.class

然后按下TAB,VS Code会自动关闭具有给定CLASSDIV标签。

但我认为您想通过按ENTER键执行此操作。

在这种情况下,请转到您的VS Code用户设置并粘贴以下代码:

"emmet.includeLanguages": {
    "javascript": "javascriptreact",
    "vue-html": "html",
    "razor": "html",
    "plaintext": "jade"
}

现在,如果你输入

div.class

然后按回车键,你就能看到神奇的效果。

然而,上述代码会使得你的VS Code自动完成功能不仅适用于普通的HTML,还包括React JSXVue.js片段等。

但是,如果你只想在HTML文件中实现这个功能,只需要添加以下代码即可:

"emmet.includeLanguages": { "javascript": "html" }

Cheers..


1

我曾经遇到同样的问题,后来我卸载了VS Code中不必要的扩展和JavaScript(SE)扩展,这样问题就得到了解决。


1

只需检查您的vscode底部并将语言模式更改为HTML 它可能一直显示为django-html 或者点击ctrl + shift + p来更改语言模式 截图

现在点击[!]+ TAB 哇,搞定了!!!


0
打开设置 cmd+, 找到 Emmet: Included Languages 添加
添加项目 django-htmlhtml

django-html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接