In general, the sole aim of the templates is to integrate any arbitrary HTML markup that lets you to further control the rendering of the component. Thus, there is no best practice for both styling the Template and ValueTemplate of the DropDownList, as it is up to the developer to modify and style the templates as per his requirements.
That being said, for your scenario, in order to display the items in a column-like manner a possible approach would be to:
Within both the Value Template and Template configuration store both the "DataText" and "DataValue" fields in separate span elements with decorated classes:
To elaborate more, I have undertaken this approach due to the current DropDownList structure. Notice, that by design, both the Value and Template elements will be wrapped within a span element. You can verify this by inspecting the created HTML markup for the DropDownList upon the DOM's rendering:
We also have a dedicated demo that illustrates how templates can further be customized which could prove helpful as well: