我正在寻找解决问题的可能方法。可以说我得到了这个HTML
<a>
<td>
</td>
<a/>
我看到我犯了错误,我想以某种方式将a
标记移动为td
的子元素之一。结果应如下所示
<td>
<a>
</a>
<td/>
我的问题是,是否有任何宏观,扩展或其他东西可以使它发挥作用?例如,Resharper只建议我删除父标签并促进孩子。对我来说最好的解决方案是使用Alt +箭头,这样选定的标签就可以在其他标签之间移动,而不是仅移动带标签的单行。
答案 0 :(得分:1)
不完全是。您可以使用ReSharper的重新排列代码功能( ctrl + alt + shift 和光标键)来移动标签。您可以使用向上和向下移动标记(和子标记)在当前行上方和下方的标记上方和下方。您还可以使用向左和向右移动标签进出当前标签的范围。
所以你可以把插入符号放在上面第一个例子的<td>
上,按 ctrl + alt + shift + ←并将整个<td></td>
块移到<a>
块范围之外。点击 ctrl + alt + shift + →会将其推入<a>
块,再来一个孩子。
但是,当你将一个标签移出范围时,它不会交换成原始范围标记的父级,而是一个兄弟,所以你不能轻易得到你所追求的东西,遗憾的是。其他语言支持称为“贪婪大括号”的功能,这在这里是理想的 - 而不是移动整个块,移动语句的结束括号(例如if
语句)并扩展内容块。理想情况下,HTML也支持这一点 - 您可以在结束标记角括号上使用“贪婪的大括号”,它只允许移动结束标记以包含兄弟标记作为子项。我添加了一项功能请求,您可以投票,跟踪并添加任何额外的详细信息到:RSRP-450292。