use textnode instead of element