[eluser]pickupman[/eluser]
That's the call of the project. All projects I handle, I've got a design given to me, and I make sure the views are look as given. Some code the site first and don't want very much php in the views, so designers manipulate the views and try not screw things up.
It boils down to, what works best for you, and what will be the easiest to maintain going forward. I treat it similar to how themes are done in wordpress. I'll use as much html I can in the views, and echo a view fields out for the content in a foreach type loop. I try to prep/run helpers in the controller that the fields can be outputted directly in a view.
Code:
//Controller
$data['link'] = anchor('view/'.$id,'Read More');
$this->load->view('some_view', $data);
//View
<p><?php echo $link;?></p>