diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/validation/valtab.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/validation/valtab.directive.js index 3eae9abd1b..057d2ec1ac 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/validation/valtab.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/validation/valtab.directive.js @@ -13,14 +13,17 @@ function valTab($timeout) { link: function (scope, element, attr, ctrs) { var form = ctrs[0]; - var tabAlias = scope.tab.alias; + var tabAlias = scope.tab.alias; + + let closestEditor = element.closest(".blockelement-inlineblock-editor"); + closestEditor = closestEditor.length === 0 ? element.closest(".umb-editor-sub-view") : closestEditor; + closestEditor = closestEditor.length === 0 ? element.closest(".umb-editor") : closestEditor; + scope.tabHasError = false; function setValidity (form) { if (!form.$valid) { - var subView = element.closest(".umb-editor-sub-view"); - var editor = subView.length > 0 ? subView : element.closest(".umb-editor"); - var tabContent = editor.find("[data-element='tab-content-" + tabAlias + "']"); + var tabContent = closestEditor.find("[data-element='tab-content-" + tabAlias + "']"); //check if the validation messages are contained inside of this tabs if (tabContent.find(".ng-invalid").length > 0) { diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/blocklist/blocklistentryeditors/inlineblock/inlineblock.editor.less b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/blocklist/blocklistentryeditors/inlineblock/inlineblock.editor.less index 5b155ac5ad..b8ffcff3ec 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/blocklist/blocklistentryeditors/inlineblock/inlineblock.editor.less +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/blocklist/blocklistentryeditors/inlineblock/inlineblock.editor.less @@ -10,6 +10,12 @@ border-color: @gray-8; } + .umb-editor-tab-bar { + margin: 0; + position: static; + padding: 0; + } + > button { width: 100%; min-height: 48px;