The standard way is to emit using @Markup - the Layout.Helper.InjectContainerElements function ship with some of the starter sites and works in conjunction with the bootstrap based templates, examining the content being emitted to figure out if content should be wrapped in a container div or not (i.e. allowed to flow full width or not).
The purpose of the function is to allow the user to mix elements on a page that go full width / keep a nice column width, without the user having to bother about the detail. The function basically looks at each block, looks for well known class names in the block - and if the well known class names are now found, the block is wrapped in a div that ensure a column layout that looks good.
tl/dr: Use Layout.Helper.InjectContainerElements with bootstrap layouts, if you want users to "just throw in content / elements" and you want the function to wrap <div class="container">...</div> around content that is not intended to go full width. Otherwise use @Markup
The purpose of the function is to allow the user to mix elements on a page that go full width / keep a nice column width, without the user having to bother about the detail. The function basically looks at each block, looks for well known class names in the block - and if the well known class names are now found, the block is wrapped in a div that ensure a column layout that looks good.
tl/dr: Use Layout.Helper.InjectContainerElements with bootstrap layouts, if you want users to "just throw in content / elements" and you want the function to wrap <div class="container">...</div> around content that is not intended to go full width. Otherwise use @Markup