У блока должно работать свойство box-sizing: border-box;
Дальше при наведении добавляешь рамку, таким образом, рамка ,будет включаться в размеры блока, а не добавлять новые дополнительные пиксели и скачка не будет.
Если он тебе не нужен..то не вставляй..в чем проблема.
Если прям боишься за семантику, якобы он там обязателен..
ну пропиши пустой
И теги будут бессмысленно валяться в коде в таком случае))