Using the XPath function normalize-space to remove the initial newline of the /head/body/line node:
xmlstarlet edit --update '/head/body/line' --expr 'normalize-space(text())' file.xml
Or, using abbreviated names:
xmlstarlet ed -u '/head/body/line' -x 'normalize-space(text())' file.xml
The output, given the input in the question, would be
<?xml version="1.0"?> <head> <body> <line>asdasd</line> </body> </head>
Use //line in place of the full path from the root node if you want to affect all line nodes in your input document.
Add -O or --omit-decl after edit or ed to discard the <?xml ...> declaration at the start of the resulting document.